Passer de A à B ... de Z à AA ...

BEAUBRIUS Messages postés 120 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 8 février 2008 - 12 mars 2004 à 20:10
BEAUBRIUS Messages postés 120 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 8 février 2008 - 12 mars 2004 à 22:49
Ba jaimerai savoir si sur le mm principe que inc pour les nombre , jaimerai savoir si sa existe pour les Lettre

3 réponses

cs_SornDrixer Messages postés 2084 Date d'inscription jeudi 12 décembre 2002 Statut Membre Dernière intervention 30 janvier 2011 8
12 mars 2004 à 20:51
[re]bonjour, voici un début d'alias qui pourra t'aider :

alias alphabet {
  if $1 && $2 {    var %a 96, %aa 122
    while %aa > %a { inc %a | var %alphabet. $+ %a $chr(%a) }
  }
  return %alphabet. [ $+ [ $calc($asc($1) + $2) ] ]
}


Utilisation : //comande $alphabet(lettre,numero)
Exemple : //echo -a $alphabet(a,4)
Retournera la lettre "e"
Pourquoi "e" ? car 4 lettres après "a", on tombe sur "e".

Voila, je n'ai pas codé entièrement se que tu voulais par faute de temps, mais tu devrais pouvoir t'en sortir.
-<gras>[ Sorn_Drixer ]-</gras>
-
Un problème ? une question ? N'hésitez pas, le forum est là pour ça.

Vous pouvez me retrouver sur koliserv.dyndns.org
0
cs_SornDrixer Messages postés 2084 Date d'inscription jeudi 12 décembre 2002 Statut Membre Dernière intervention 30 janvier 2011 8
12 mars 2004 à 21:08
Update du code :

alias alphabet {
  if $1 && $2 {    var %a 96, %aa 122
    while %aa > %a { inc %a | var %alphabet. $+ %a $chr(%a) }
  }
  var %alphabet.tmp = %alphabet. [ $+ [ $calc($asc($1) + $2) ] ]
  if !%alphabet.tmp {
    var %b = $2
    while %b >= 26 && !%alphabet. [ $+ [ $calc($asc($1) + %b) ] ] { dec %b 26 }
    return %alphabet. [ $+ [ $calc($asc($1) + %b) ] ]

  }
  return %alphabet.tmp
}


Maintenant $alphabet gère lorsque le 2ème paramètre est suppérieur à 26.
Par exemple, //echo -a $alphabet(a,27) retournera b

Par contre, j'ai finalement essayé de gèrer le passage de Z à AA, mais étant donné que se n'est pas une suite logique, c'est vraiment bien galère.
-<gras>[ Sorn_Drixer ]-</gras>
-
Un problème ? une question ? N'hésitez pas, le forum est là pour ça.

Vous pouvez me retrouver sur koliserv.dyndns.org
0
BEAUBRIUS Messages postés 120 Date d'inscription lundi 19 mai 2003 Statut Membre Dernière intervention 8 février 2008
12 mars 2004 à 22:49
Merci quand mm sa va dj bien me servir
il faut juste metre quelque if genre if $1 == z { return aa }
elseif ....
0
Rejoignez-nous