Par exemple n = 8135267 => 16 Voici une solution mais je ne la comprends pas.Fonction récursive qui résume les chiffres impairs d'un entier
int sumOddDigits(int n) {
if(n == 0)
return 0;
if(n%2 == 1) //if n is odd
//returns last digit of n + sumOddDigits(n/10) => n/10 removes the last digit of n
return n % 10 + sumOddDigits(n/10)
else
return sumOddDigits(n/10);
}
Le code est clair et simple. Alors, quelle est votre question? – TonyK
Choisissez un nombre plus petit et parcourez ceci sur papier. Vraiment, ce sera aussi clair que toute explication que vous pouvez obtenir ici. –
Avez-vous essayé de l'exécuter par étapes dans un débogueur et de regarder ce qui se passe? –