DE DÉCIMAL EN ... TOUTES LES BASES PLUS PETITES QUE 35
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 2019
-
20 mai 2003 à 14:11
krissssss
Messages postés88Date d'inscriptionjeudi 26 décembre 2002StatutMembreDernière intervention 2 janvier 2007
-
31 juil. 2003 à 18:46
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
krissssss
Messages postés88Date d'inscriptionjeudi 26 décembre 2002StatutMembreDernière intervention 2 janvier 2007 31 juil. 2003 à 18:46
Merci :-)
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 20 mai 2003 à 14:11
Vraiment excelent !!!!!
je te met 9/10 et je t'envoi la fonction que j'en ai deduit :
il manque encore le bit de poid fort pour la conversion des nombre negatifs mais la tout de suite j'y ai pas encore reflechis....
Function BaseN(ByVal Value As Long, ByVal Base As Integer) As String
Dim Sign As Boolean
Dim Temp As Long
If Base < 2 Then Exit Function
If Base > 35 Then Exit Function
Sign (Value And &H80000000) &H80000000
Value = Value And &H7FFFFFFF
Do
Temp = Value Mod Base
If Temp > 9 Then
BaseN = Chr$(55 + Temp) & BaseN
Else
BaseN = Temp & BaseN
End If
Value = (Value - Temp) / Base
Loop Until Value = 0
If Sign Then
'Placer ici l'ajustement du signe
'desoler j'ai pas encore reflechis a une solution ;-D
End If
End Function
31 juil. 2003 à 18:46
20 mai 2003 à 14:11
je te met 9/10 et je t'envoi la fonction que j'en ai deduit :
il manque encore le bit de poid fort pour la conversion des nombre negatifs mais la tout de suite j'y ai pas encore reflechis....
Function BaseN(ByVal Value As Long, ByVal Base As Integer) As String
Dim Sign As Boolean
Dim Temp As Long
If Base < 2 Then Exit Function
If Base > 35 Then Exit Function
Sign (Value And &H80000000) &H80000000
Value = Value And &H7FFFFFFF
Do
Temp = Value Mod Base
If Temp > 9 Then
BaseN = Chr$(55 + Temp) & BaseN
Else
BaseN = Temp & BaseN
End If
Value = (Value - Temp) / Base
Loop Until Value = 0
If Sign Then
'Placer ici l'ajustement du signe
'desoler j'ai pas encore reflechis a une solution ;-D
End If
End Function
Merci
b@nne prog