aussi. je voudrai connaître la valeur de tout ce beau monde(chiffres + minuscules),
et voici le code de Dobro donné il y a peu pour les chiffres, donc une bonne base de départ:
; l'objectif du moment est de trouver la valeur de chaque chiffre et minuscule contenu dans la chaine suivante:
chaine$="0123456789abcdefghijklmnopqrstuvwxyz-!" ; on transforme en chaine
Debug "chiffres+minuscules:"+chaine$
For i=1 To Len(chaine$) ; pour toute la longueur de la chaine
extrait$=Mid(chaine$,i,1); on recupere chaque caractere de la chaine$ contenant notre chiffre
Debug Val(extrait$) ; ici on a la valeur de chaque chiffre qui compose notre nombre :o)
; il suffit de faire correspondre chacun de ces chiffres en image (0 a 9)
Next i
; l'objectif du moment est de trouver la valeur de chaque chiffre et minuscule contenu dans la chaine suivante:
chaine$="0123456789abcdefghijklmnopqrstuvwxyz-!" ; on transforme en chaine
Debug "chiffres+minuscules:"+chaine$
For i=1 To Len(chaine$) ; pour toute la longueur de la chaine
; extrait$=Mid(chaine$,i,1); on recupere chaque caractere de la chaine$ contenant notre chiffre
extrait$ = Chr(Asc(Mid(Chaine$,i,1)))
Debug Chr(Asc(Mid(Chaine$,i,1)))
;Debug Val(extrait$) ; ici on a la valeur de chaque chiffre qui compose notre nombre :o)
; il suffit de faire correspondre chacun de ces chiffres en image (0 a 9)
Next i
Dernière modification par beauregard le ven. 17/avr./2009 16:04, modifié 1 fois.
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
; l'objectif du moment est de trouver la valeur de chaque chiffre et minuscule contenu dans la chaine suivante:
chaine$="0123456789abcdefghijklmnopqrstuvwxyz-!" ; on transforme en chaine
Debug "chiffres+minuscules:"+chaine$
For i=1 To Len(chaine$) ; pour toute la longueur de la chaine
; extrait$=Mid(chaine$,i,1); on recupere chaque caractere de la chaine$ contenant notre chiffre
extrait$ = Chr(Asc(Mid(Chaine$,i,1)))
;Debug Chr(Asc(Mid(Chaine$,i,1)))
Debug Asc(Mid(Chaine$,i,1))
;Debug Val(extrait$) ; ici on a la valeur de chaque chiffre qui compose notre nombre :o)
; il suffit de faire correspondre chacun de ces chiffres en image (0 a 9)
Next i
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86
La fonction ASC(chaine) retourne un code entre 0 et 255 pour chaque caractère.
Le point d'exclamation = code 33
Le signe moins = code 45
Les chiffres de 0 à 9 = codes 48 à 57
Les lettres majuscule de A à Z = codes 65 à 90
Les lettres minuscule de a à z = codes 97 à 122
Enumeration
#Zero
#Caution
#Minor
#Chiffre
#Lettre
EndEnumeration
Global Type.I
Global Valeur.I
Procedure LectureCaractere(Char.C)
Select Char
Case 33
Type = #Caution
Case 45
Type = #Minor
Case 48 To 57
Type = #Chiffre
Valeur = Char - 48
Case 65 To 90
Type = #Lettre
Valeur = Char - 65
Case 97 To 122
Type = #Lettre
Valeur = Char - 97
EndSelect
EndProcedure
Enumeration
#Zero
#Caution
#Minor
#Chiffre
#Lettre
EndEnumeration
Global Type.I
Global Valeur.I
Procedure LectureCaractere(Char.C)
Select Char
Case 33
Type = #Caution
Case 45
Type = #Minor
Case 48 To 57
Type = #Chiffre
Valeur = Char - 48
Case 65 To 90
Type = #Lettre
Valeur = Char - 65
Case 97 To 122
Type = #Lettre
Valeur = Char - 97
EndSelect
EndProcedure
Chaine$ = "0123456789abcdefghijklmnopqrstuvwxyz-!"
For I = 1 To Len(Chaine$)
LectureCaractere(Asc(Mid(Chaine$, I, 1) ) )
Debug Str(I) + "= " + StringField("Point d'interrogation;Signe moins;Chiffre;Lettre", Type, ";") + " Index n°" + Str(Valeur)
Next I
j'avais trouvais tout seul comme un grand comment fonctionne ce truc là dans le 2eme message. j'ai juste oublié de signaler résolu dans le message du post, mais merci quand même
config de mon ordi: seven, directx11, Pentium(R) DualCore E5700, RadeonHD 4550 512MB, PureBasic 4.61 x86