Bonjour,
Voici mon problème, je voudrais arriver à faire ceci en C LISP :
1
2
3
4
5
Avec une fonction (compte 5) par exemple. Cette fonction imprime donc les chiffre de 1 à 5. Mais la difficulté serait de la faire en récursivité.
Voila donc mon premier programme :
1 2 3 4 5 6
|
(defun compte(nbr &aux compteur)
(setq compteur 0)
(cond
((equal nbr compteur) 0)
((print (+ compteur 1))(compte (- nbr 1))) |
Cette fonction m'affiche ceci :
1
1
1
1
1
0
Ce qui est normal car la variable compteur est redéfini à chaque appel de la fonction ...
Alors ma question est simple comment arriver au résultat indiqué plus haut de manière récursive et non itérative ?
Je vous remercie de me mettre sur la voie.
Partager