Récupération d'une variable !

cyberlulu Messages postés 62 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 26 juin 2008 - 7 févr. 2004 à 22:43
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 - 9 févr. 2004 à 17:28
Salut tout le monde
dans le programme que je suis en train de faire, j'enregistre le nombre 0 dans la variable a, le nombre 1 dans la variable b, le 2 dans le c..... j'effectue des opérations et à la fin, je trouve un certain nombre, par exemple le chiffre 2. comment est-ce que je peux faire pour que mon programme affiche la lettre c en sachant que dans la variable c est enregistrée le nombre 2 ?? la seule facon que je vois, c'est de faire plein de boucles if qui vérifient à chaque fois quelle est la lettre. mais je pense que c'est ce qu'il y a de mieux....
merci de me répondre

@++

5 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 févr. 2004 à 23:15
Si tu as toujours A=1, B=2, C=3, ... Z = 26. Tu peux simplement passer par le code ascii des lettres.
Et tu n'as même pas besoin de déclarer des variables A, B, C, D .... Z.
Si a la fin de ton calcul tu tombes avec une variable que je nommerais 'R' et qui est = à quelque chose compris entre 1 et 26
Alors, tu obtiens la lettre correspondante en faisant
Chr$(64+R) ou Chr$(96+R) si tu la veux en minuscule

Christophe R.
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 à 09:34
C'est ce que j'avais utilisé comme solution au début mais là, j'aimerais utilisé plus de caractères comme l'espace, les points d'interrogation... et ces caractères ne se suivent pas dans la table ascii ! a la limite, je pourrais tjs faire comme ca pour les lettres de l'alphabet et faire des boucles if pour le reste des caractères... je ne sais pas si c'est une bonne idée et s'il n'y a pas plus simple.

cyberlulu
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
9 févr. 2004 à 01:10
Le problème c'est que le nom d'une variable ne peut pas être "espace" ou ? : il doit commencer par une lettre
0
cyberlulu Messages postés 62 Date d'inscription dimanche 10 novembre 2002 Statut Membre Dernière intervention 26 juin 2008
9 févr. 2004 à 16:08
oui, en plus. alors tu me proposes quoi ? parce que là, je sais pas vraiment comment faire...
0

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

Posez votre question
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
9 févr. 2004 à 17:28
Tu peux mettre tes variables dans un tableau :
Dim Variable(99) As Integer
te permet de stocker 100 variables :
For i = 0 To 99
  Variable(i) = i
Next i

Tu fais tes calculs et à la fin, si le résultat est X, tu fais afficher : "Résultat = Variable(" & Cstr(X) & ")"
ou bien "Résultat = Variable" & Cstr(X)
qui affichera par exemple si X = 5
Résultat = Variable(5)
ou Résultat = Variable5

--------------------------
Autre solution beaucoup plus longue à mettre en oeuvre :
tu nommes tes variables avec 2 lettres. Toujours pour 100 variables :aa 0, ab 1, ...., aj = 9, ba = 10, bb = 11, ..., bj = 19, ca = 20, ..., jj = 99
(C'est ça qui est long : il faut définir les 100 variables)

A la fin, on trouve X :
Résultat = Chr((X\10) + 97) & Chr((X Mod 10) + 97)
qui te donnera si X = 48 :
Chr((48 \ 10) + 97) & Chr((48 Mod 10) + 97)
= Chr(4 + 97) & Chr(8 + 97)
= Chr(101) & Chr(105)
= ei

65 à la place de 97 pour avoir des majuscules.
0
Rejoignez-nous