Pb chaine caractères

cyberlulu Messages postés 62 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 26 juin 2008 - 8 févr. 2004 à 13:45
cs_Geff Messages postés 192 Date d'inscription vendredi 2 mars 2001 Statut Membre Dernière intervention 10 janvier 2006 - 8 févr. 2004 à 20:53
Salut tout le monde !

dans une variable, j'ai la chaine de caractère "A". comment est-ce que je peux faire pour transformer le "A" en A. comme ca, vu que j'ai un nombre dans ma variable A, je pourrais faire des calculs.

cyberlulu

6 réponses

Arsena Messages postés 190 Date d'inscription lundi 24 mars 2003 Statut Membre Dernière intervention 27 septembre 2005
8 févr. 2004 à 17:20
declare ta variable

dim A as integer

@+
MD
0
cyberlulu Messages postés 62 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 26 juin 2008
8 févr. 2004 à 19:07
En fait, c'est pas ca que je voulais dire. c'est que j'extraie lettre par lettre un mot avec la fonction mid. donc j'obtiens par exemple la lettre "b" stockée dans une variable que j'appelle lettre. j'ai aussi enregistré dans la variable b le nombre 3 (par exemple). et j'aimerais faire un calcul en utilisant la variable lettre. le pb, c'est que dans la variable lettre, il y a le caractère "b" et non la lettre b qui donnerait un 3.
cyberlulu
0
cs_Geff Messages postés 192 Date d'inscription vendredi 2 mars 2001 Statut Membre Dernière intervention 10 janvier 2006
8 févr. 2004 à 20:06
On ne peut pas faire la relation entre le contenu d'une varaible et son nom malheuresement!
Cependant j'ai peut etre une solution a ton probleme :D

si j'ai bien compris tu dispose d'un texte genre ::

Dim Texte as string
Texte="y=ax+b"

et tu dispose de variable comme cela :
Dim a as integer
Dim b as integer

a=2
b=3

par exemple!

Moi je te propose une autre solution! fait plutot ca ::

Dim Texte as string
Texte="y=ax+b"

Dim Valeur(25) as integer

Valeur(0) =2
Valeur(1) =3

Ainsi tu peux facilement faire la relation entre une lettre et son contenu en faisant ainsi ::
dim Lettre as string
Lettre = "a"

Valeur(asc(lettre)-97) = 2

En effet ::
asc("a")-97 = 0
asc("b")-97 = 1
...
asc("z")-97 = 25

attention cependant aux majuscules::!

asc("A")-97 = -32
car le code ascii de "A" est 65 et celui de "a" est 97
pour remédier a cela tu peux convertir la lettre automatiquement en minsucle en faisant cela ::

dim Lettre as string
Lettre = "A"

Valeur(asc(Lcase(Lettre))-97) = 2

Et voila probleme résolu, si tu n'as pas compris quelquechose, dis le moi!

Geff >:)
0
Arsena Messages postés 190 Date d'inscription lundi 24 mars 2003 Statut Membre Dernière intervention 27 septembre 2005
8 févr. 2004 à 20:16
Bravo Geff

Bien pense et bien expliqué

MD
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cyberlulu Messages postés 62 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 26 juin 2008
8 févr. 2004 à 20:40
alors là, je dis chapeau ! aussi bien pour l'idée que pour l'explication, c'était très clair. merci bcp !!!

cyberlulu
0
cs_Geff Messages postés 192 Date d'inscription vendredi 2 mars 2001 Statut Membre Dernière intervention 10 janvier 2006
8 févr. 2004 à 20:53
De rien ;)

Geff >:)
0
Rejoignez-nous