Remplacer l'alphabet par leur rang!!

BATITI1992 Messages postés 57 Statut Membre -  
BATITI1992 Messages postés 57 Statut Membre -
Bonjour,

cc tout le monde svp comment je fé pour remplacer l'alphabet par leur rang !! exemple
a=1 b=2....z=26,
quand je tape BONJOUR CA VA etre 2 16 15 11 16 22 19, é contraire, et quelle boucle doi je utiliser svp é merci!

4 réponses

  1. kevin76110 Messages postés 5350 Statut Membre 875
     
    'lut,

    2 choses:
    - cherche un peu par toi-même. CCM n'est pas fait pour résoudre tes exercices de cours.
    - L'orthographe a été inventée afin de se comprendre : merci de la respecter.
    2
  2. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour,
    Avec quel langage ?
    A+
    0
  3. BATITI1992 Messages postés 57 Statut Membre
     
    pascal svp
    0
  4. vordano Messages postés 1981 Statut Membre 316
     
    tu peux essayer de récupérer le code ascii de ta lettre avec
    integer(ord(chaine[index])

    tu retrouve le code de la lettre a puis tu retranche 1 a ce code et ensuite tu n'as plus qu'a soustraire le code ascii de n'importe quel lettre avec le code trouvé
    ou alors tu fais une simple boucle avec un test qui incrémente une variable
    0
    1. BATITI1992 Messages postés 57 Statut Membre
       
      mon algorithme ne me permet po d'utiliser code ascii!!
      0
    2. vordano Messages postés 1981 Statut Membre 316
       
      et bien modifie ton algo ou fait une simple boucle...
      0
    3. BATITI1992 Messages postés 57 Statut Membre
       
      comment svp!!
      0
    4. vordano Messages postés 1981 Statut Membre 316
       
      tu peux utiliser une boucle et des if pour chaque lettre, ou chercher comment récupérer le code ascii d'une lettre (c'est forcément possible, donc inutile de dire que ton algo ne te permet pas de le faire)
      0
    5. nicocorico Messages postés 846 Statut Membre 138
       
      Le code ascii des caractères de A à Z est compris entre 65 et 90 inclus, il te suffit donc de tester si tu es dans les limites et de retrancher 64 de manière à ce que le 'A' donne 1, idem pour les minuscules comprises entre 97 et 122 :
      Char:= Chaine[Index];
        if Char in ['A'..'Z'] then
        Valeur:= byte(Char) - 64 else
        if Char in ['a'..'z'] then
        Valeur:= byte(Char) - 96;
      0