A voir également:
- Divisibilité par 17 methode récursive
- Jre 17 - Télécharger - Langages
- Je ne reçois plus les chaines 8 15 16 17 18 - Forum TNT / Satellite / Réception
- Je contacte 17 activer mon compte - Forum Réseaux sociaux
- Ppcm recursive ✓ - Forum Programmation
- 17 track avis - Forum Consommation & Internet
1 réponse
Bonjour
Pour résoudre de façon récursive, il faut que la fonction traite les cas simples (petits nombre) et si c'est compliqué, qu'elle simplifie (s'approche des cas simples) avant de se rappeler elle-même.
Dans le problème le cas simple, c'est n<34 et dans le cas général n>33, on reporte la question sur a-5b qui sera alors plus petit.
fonction divisiblepar17(n)
si n<0 (attention (a-5b) peut être négatif)
n <- -1*n
si n < 34
(cas simples)
si n==0 ou n==17
return vrai
sinon
return faux
sinon
a <- n div 10 (division euclidienne)
b <- n mod 10 (reste de la division euclidienne)
return divisiblepar17(a-5b)
Voilà, je pense qu'il n'y a plus qu'à traduire dans le langage de ton choix.
Pour résoudre de façon récursive, il faut que la fonction traite les cas simples (petits nombre) et si c'est compliqué, qu'elle simplifie (s'approche des cas simples) avant de se rappeler elle-même.
Dans le problème le cas simple, c'est n<34 et dans le cas général n>33, on reporte la question sur a-5b qui sera alors plus petit.
fonction divisiblepar17(n)
si n<0 (attention (a-5b) peut être négatif)
n <- -1*n
si n < 34
(cas simples)
si n==0 ou n==17
return vrai
sinon
return faux
sinon
a <- n div 10 (division euclidienne)
b <- n mod 10 (reste de la division euclidienne)
return divisiblepar17(a-5b)
Voilà, je pense qu'il n'y a plus qu'à traduire dans le langage de ton choix.