Bonjour, je fais appel à vous car je n'ai pas grand monde pour m'aider.
Voilà, j'ai une fonction qui donne les caractères compris entre 2 codes caractères qu'on lui donne.
1 2 3 4
| (defun alphabet (deb fin)
(cond
((eq deb fin) "")
((string-concat (string (code-char deb)) (alphabet (incf deb) fin))) ) ) ) |
Petit test :
1 2
| > (alphabet 65 127)
"ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" |
Cette fonction récursive je dois la transformer en fonction itérative mais je ne sais pas trop comment m'y prendre. Voilà ce que j'ai pour l'instant, je sais que ce n'est PAS correct DU TOUT mais je poste quand même :
1 2 3 4
| (defun alphabet (deb fin &aux listchar)
(cond
((eq deb fin) "" (return listchar))
((cons (car listchar) (append (string (code-char deb)) (cdr listchar)))) |
Si quelqu'un peut m'aiguiller, me mettre sur la piste car je bloque.
Merci d'avance !
Partager