Bonjour,
Je souhaiterais créer un programme sous VB 5 permettant de convertir des octets ( ex. : une chaîne de caractères qui est "01000110" ) en nombres entiers en fonction du poids de chaque bit et de son rang dans la chaîne de caractères.
![]()
Bonjour,
Je souhaiterais créer un programme sous VB 5 permettant de convertir des octets ( ex. : une chaîne de caractères qui est "01000110" ) en nombres entiers en fonction du poids de chaque bit et de son rang dans la chaîne de caractères.
![]()
Je crois bien que ça existe déjà.
Regarde les fonctions de transformation, comme VAL(), HEX() ...
![]()
Oui,![]()
Mais en définitive s'il fallait aller chercher le dernier caractère puis le multiplier par son poids, puis l'avant-dernier, le multiplier à nouveau par son poids correspondant et ainsi de suite comment peut-on procéder avec les instructions Dim, Str, ou ?...
Toutefois merci beaucoup, je ne connaissais pas ces deux instructions de conversion.![]()
Allez, je ne te le donne pas tout cru, pour faire plaisir à jmfmarques:
Tu fais une boucle sur chaque caractère de ta chaine, en commençant par la droite (de Len(MaChaine) à 1, quoi). Et ce caractère (0 ou 1), tu le multiplies par son poids, c'est-à-dire 2 à la puissance 0, puis le caractère suivant par 2 puissance 1, et ainsi de suite... en réadditionnant chaque nouveau terme au résultat précédent.
Bref: avec 2 lignes de code, dans une boucle, tu fais ton calcul.
Allez, lance toi. Ecris quelquechose.
au passage tu penses à genéraliser ta fonction
comment on fait en base 8 ou 16 ou 97 ??
ce sera plus rigolo encore
Partager