Enfin un exemple de transformation binaire -> decimal : qui fonctionne!!!

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 561 fois - Téléchargée 31 fois

Contenu du snippet

Pour la petite histoire, c'est la premiere fois que j'envois une sources visual basic sur internet mais je ne suis pas debutant: sa fait 3ans que je suis passionné par la prog et donc en visual j'ai fait un jeu de voiture 3d (pas mal mais pauvre graphiquement) et un fps(juste un debut qui est pas trop mal graphiquement): toute cette histoire pour dire que si quelqu'un veut une de ces sources ils faut qu'il me mette un commentaire a cette source avec son adresse et je lui enverais par email: voila! Bon ce prog la c'est juste une fonction qui permet de transformer du binaire en decimal car j'en avait mare de voir des sources qui premettent de transformer du binaire en decimal qui ne fonctionne pas! Voila la au moin c'est simple et sa marche!

Signé:
DIJOUX Cédric

Source / Exemple :


Function convert(binaire$) As Long
div = 128
For x = 1 To 8
If Mid$(binaire$, x, 1) = "1" Then chif = chif + div
div = div / 2
Next
convert = chif
End Function

Conclusion :


Bon voila donc j'ai pas mi de commentaire(j'en vois pas l'utilité). Le fonctionnement:
mettre la function dans votre programme et pour appeller cette fonction il suffit de faire du style:
chiffre = convert("00001000")

ou chiffre est le chiffre correspondant au chiffre binaire et ou "00001000" est le chiffre bianaire: je peux pas faire plus simple!

A voir également

Ajouter un commentaire Commentaires
Messages postés
473
Date d'inscription
mercredi 7 août 2002
Statut
Membre
Dernière intervention
10 juin 2015

Je propose ça :
val("&b" & valeur)
qui renvoie la valeur convertie en integer
Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
10
Pour revenir à Binaire => Décimal, une fonction qui marche quelle que soit la longueur de la chaîne binaire (jusqu'à 48 bits ; au-delà, on dépasse la limite VB de 15 chiffres décimaux) :

Private Function bin_dec(bin As String) As Long
Dim i As Integer
For i = Len(bin) To 1 Step -1
    bin_dec = bin_dec + Mid(bin, i, 1) * 2 ^ (Len(bin) - i)
Next i
End Function
Messages postés
442
Date d'inscription
samedi 23 novembre 2002
Statut
Membre
Dernière intervention
19 octobre 2005

ouai c cool, pour des mots on peut aussi faire comme ca:

Select Case ConvertHextoBinVar
Case 0: bin = "0000"
Case 1: bin = "0001"
Case 2: bin = "0010"
Case 3: bin = "0011"
Case 4: bin = "0100"
Case 5: bin = "0101"
Case 6: bin = "0110"
Case 7: bin = "0111"
Case 8: bin = "1000"
Case 9: bin = "1001"
Case "A": bin = "1010"
Case "B": bin = "1011"
Case "C": bin = "1100"
Case "D": bin = "1101"
Case "E": bin = "1110"
Case "F": bin = "1111"
End Select
on découpe donc la chaine de caractere a transformer en hexa de 2 lettres et on les envois 2 par 2 dans une fonction par exemple

voila @+
Messages postés
224
Date d'inscription
jeudi 31 janvier 2002
Statut
Membre
Dernière intervention
22 décembre 2009

Pas mal , j'suis sur que sa pourra me servire plus tar.

Sinon , tu serais m'envoyé tes sources du projet de Voiture ?
sa m'interrese
golog123@hotmail.com
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
Idéalement, il faudrait que la fonction ne soit pas limitative a une taille d'un octet pour le mot binaire :

Function BinToDec(Binaire As String) As Long
Dim Div As Long, X As Integer, Tmp As Long
Div = 2 ^ (Len(Binaire) - 1)
For X = 1 To Len(Binaire)
If Mid$(Binaire$, X, 1) "1" Then Tmp Tmp + Div
Div = Div / 2
Next
BinToDec = Tmp
End Function


Bonne source tout de même :-) Et Bonne continuation

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.