Forum > C et C++ > 0 + 0 = la tête à Toto >

0 + 0 = la tête à Toto

répondre

première page page précédente page suivante dernière page

Navigation rapide :

Auteur Message
jeremya Posté le 21 avr 2009 16:28:22

Administrateur
Administrateur

Auteur
Auteur

Modérateur
Modérateur

Inscrit le : 08 nov 2008
Localisation : Nord-Pas-de-Calais
Emploi :
Loisirs :

PROBLEME

la tête à Toto

Comme vous le savez, 0 + 0 = 0. On pourrait aussi dire 0 = (0 + 0). Dans ce cas, on peut aussi aller un peu plus loin, et puisque 0 vaut (0 + 0), remplacer les 0 de (0 + 0) par leur valeur, et obtenir :

0 = ((0 + 0) + (0 + 0)).

Rien n'empêche de continuer et d'écrire :

0 = (((0 + 0) + (0 + 0)) + ((0 + 0) + (0 + 0))).

Cela devient vite fatiguant de le faire à la main. Ecrivez-donc un programme qui le fait pour vous. Votre programme doit lire un entier N, et afficher la chaîne indiquant la valeur de 0, en ayant remplacé N fois les zéros à droite de l'égalité "0 = 0", par leur valeur : (0 + 0).

Votre programme doit impérativement utiliser une fonction récursive, et non une boucle..

CODE SOURCE

Code: C++
  1. #include <cstdio>
  2.  
  3. void tete_toto(unsigned int n)
  4. {
  5. if (n == 0) {
  6. printf("0");
  7. return;
  8. }
  9.  
  10. printf("(");
  11. tete_toto(n - 1);
  12. printf(" + ");
  13. tete_toto(n - 1);
  14. printf(")");
  15. }
  16.  
  17. int main(int argc, char* argv[])
  18. {
  19. unsigned int N;
  20.  
  21. scanf_s("%u", &N);
  22.  
  23. printf("0 = ");
  24. tete_toto(N);
  25. printf("\n");
  26.  
  27. return 0;
  28. }
  29.  
Messages : 284 http://www.jeremya.ironie.org citer

répondre

première page page précédente page suivante dernière page

Navigation rapide :

Forum > C et C++ > 0 + 0 = la tête à Toto >


Cette page a été générée le 21 mar 2010 13:27:26.
page d'accueil Jeremya's Web Site
jeremya.ironie.org

s'identifier

Nom d'utilisateur :
Mot de passe :

outils

qui est en ligne ?

3 visiteurs en ligne