/* Fichier Recurs4.cpp : révision pour l'intra Afficher un entier n > 0 (exemple 6123) sous forme 6 1 2 3 */ #include #include // pour setw et setprecision using namespace std; void continuer() { cout << endl << endl << "Appuyez sur une lettre suivie de Entree " ; char lettre; cin >> lettre ; cout << endl; } // version récursive void afficher(int n) { if ( n < 10 ) cout << n % 10 << endl ; else { afficher(n / 10) ; cout << n % 10 << endl ; } } // version itérative : on mémorise dans un tableau void afficher2(int n) { const int MAX_CHIF = 10; int chif[MAX_CHIF] ; int nbElem = 0; while(n > 0) { chif[nbElem++] = n % 10; n = n / 10; } cout << endl << "Version iterative : " << endl; for(int i = nbElem-1; i >= 0; i--) cout << chif[i] << endl; } int main() { cout << "Version recursive pour n = 7654 : " << endl; afficher(7654); afficher2(7654); continuer(); return 0; } /* Exécution : Version recursive pour n = 7654 : 7 6 5 4 Version iterative : 7 6 5 4 Appuyez sur une lettre suivie de Entree */