Bonjour
Voilà j'ai un problème avec une fonction !

Je l'ai testée sous tous les angles, et fait chaque étape sur papier et il n'y a rien à faire je ne comprends pas d'où sort l'erreur de calcul... c'est à n'y rien comprendre.

VB.NET
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Function DecOct(dec As Integer) As Integer
 
        Dim i, oct, tmp As Integer
 
        i = 0
 
        oct = 0
 
        tmp = 0
 
        Do
 
            tmp = dec Mod 8
 
            oct += tmp * (10 ^ i)
 
            dec /= 8
 
            i += 1
 
        Loop While i <= 2
 
        Return oct
 
    End Function
Lorsque j'envoie l'entier 127 à la fonction elle est sensée me sortir 177 mais elle me sort 207 ! Si lui donne 7 elle me sort 17 alors qu'elle devrait me sortir 7 !

Svp quelqu'un ?

Merci