Bonsoir , j'ai écrit une fonction qui calcule la somme des entiers entre x et y , mais qui me renvoie une erreur si x est supérieur à y , regardez :
alors c'est drole car si je fais (somme 5 3) , ça va bien me renvoyer une erreur , mais si je fais (somme 3 5) ça me renverra une erreur aussi , pourtant j'ai bien pris soin de sortir la fonction récursive du if pour éviter ce genre de probleme , mais rien n'y fait , vous avez une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 (define (somme x y) (if (> x y) (erreur 'somme "(" x ") >" "(" y ")" ) ) (+ y (somme x (- y 1) )) )
merci
Partager