Convertir du cpp en VB.net ou VB [Résolu]

Messages postés
85
Date d'inscription
vendredi 24 septembre 2010
Dernière intervention
20 mai 2011
- - Dernière réponse : Taur33
Messages postés
85
Date d'inscription
vendredi 24 septembre 2010
Dernière intervention
20 mai 2011
- 15 janv. 2011 à 15:19
bonsoir à tous,
j'aurais besoin de convertir le code suivant en vb
je précise que j'ai déjà essayé des logiciels qui soit disant le faisait mais cela ne fonctionne pas :
#define TAILLE 2147



void fact(int n)
{
int tab[TAILLE];
int k=1;
int m,i,p;
int base=1000000;
int x,y;

//initialisation du tableau de stockage
for(i=0;i<TAILLE;i++) tab[i]=0;
tab[TAILLE-1]=1;


//Calcul des composantes du résultats et stockage ds le tableau
for(m=1;m<=n;m++)
{
p=0;

for(i=1;i<=k;i++)
{
x=(p+m*tab[TAILLE-i]); 
y=x%base;
p=(x-y)/base;  
tab[TAILLE-i]=y;

}
if(p!=0) tab[TAILLE+1-k]=p;
k++;
}

//affichage du résultat
k=0;
while(tab[k]==0) k++;


cout<<tab[k];
for(i=k+1;i<TAILLE;i++) 
{
if (tab[i]<10) cout<<"00000"<<tab[i];
else if (tab[i]<100) cout<<"0000"<<tab[i];
else if (tab[i]<1000) cout<<"000"<<tab[i];
else if (tab[i]<10000) cout<<"00"<<tab[i];
else if (tab[i]<100000) cout<<"0"<<tab[i];
else cout<<tab[i];
}
cout<<endl;
}

Merci d'avance.
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
85
Date d'inscription
vendredi 24 septembre 2010
Dernière intervention
20 mai 2011
3
Merci
Ok c'est résolu
je donnel'algo en vb si quelqu'un est intéressé par la convertion du C en VB et par le calcul d'une factorielle avec tous les chiffres:
 Public Function facto(ByVal N As Integer) As String
        Dim tab(N) As Integer
        Dim k As Integer = 1
        Dim base As Long = 1000000
        Dim x As Long
        Dim y As Long
        Dim i As Long
        Dim m As Long
        Dim p As Long
        Dim TAILLE As Long = N

        'initialisation du tableau de stockage

       
        tab(TAILLE - 1) = 1

        ' Calcul des composantes du résultats et stockage ds le tableau
        For m = 1 To N
            p = 0

            For i = 1 To k
                x = (p + m * tab(TAILLE - i))
                y = x Mod base
                p = (x - y) / base

                tab(TAILLE - i) = y
            Next
            If p <> 0 Then
                tab(TAILLE + 1 - k) = p
            End If
            k += 1
        Next

        'affichage du résultat
        k = 0
        While tab(k) = 0
            k += 1
        End While


        facto = tab(k)

        For i = k + 1 To TAILLE - 1
            Select Case tab(i)
                Case Is < 10
                    facto = facto & "00000" & tab(i)
                Case Is < 100
                    facto = facto & "0000" & tab(i)
                Case Is < 1000
                    facto = facto & "000" & tab(i)
                Case Is < 10000
                    facto = facto & "00" & tab(i)
                Case Is < 100000
                    facto = facto & "0" & tab(i)
                Case Else
                    facto = facto & tab(i)
            End Select
        Next

    End Function

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Taur33

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.