Suites arithmétiques
Jules_0055
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour j'ai un exercice en c à rendre pour ce soir et je ne sais pas si j'ai bien interpréter l'énoncé de l'exercice.
Enoncé :
Écrire la fonction suite_Bangkok qui retourne le n-ième terme de la suite définie ci-dessous :
◦ U0 = 1 pour tout n > 1 :
◦ Un+1 = Un2
-3 si n est multiple de 2 ( avec : Un2= Un * Un)
◦ Un+1 = Un +2 si n est multiple de 3.
Un+1 = Un2 -1 si n n’est pas multiple de 3.
J'ai déja rédiger le code en c selon mon interprétation de l'énoncé et j'aimerais avoir votre avis dessus.
De plus je ne vois pas comment traduire Un+1= Un^2 -3 ; Un=((U0^2)^n)-3 en laguage c et notament le puissance n.
Merci de vos réponse, je les attends avec impatience.
Enoncé :
Écrire la fonction suite_Bangkok qui retourne le n-ième terme de la suite définie ci-dessous :
◦ U0 = 1 pour tout n > 1 :
◦ Un+1 = Un2
-3 si n est multiple de 2 ( avec : Un2= Un * Un)
◦ Un+1 = Un +2 si n est multiple de 3.
Un+1 = Un2 -1 si n n’est pas multiple de 3.
J'ai déja rédiger le code en c selon mon interprétation de l'énoncé et j'aimerais avoir votre avis dessus.

De plus je ne vois pas comment traduire Un+1= Un^2 -3 ; Un=((U0^2)^n)-3 en laguage c et notament le puissance n.
Merci de vos réponse, je les attends avec impatience.
A voir également:
- Suites arithmétiques
- Suites bureautiques - Guide
- Suites bureautiques gratuites - Guide
8 réponses
Bonjour,
Pour commencer... il faut poster ton code correctement sur le forum.
Pour ça, tu dois utiliser les BALISES DE CODE.
Explications (à lire entièrement !! ) disponibles ici https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Pour commencer... il faut poster ton code correctement sur le forum.
Pour ça, tu dois utiliser les BALISES DE CODE.
Explications (à lire entièrement !! ) disponibles ici https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
je pense que tu n'as pas compris l'énoncé.
avant de programmer, fais peut-être les calculs à la main.
je pense que tu n'as pas compris l'énoncé.
avant de programmer, fais peut-être les calculs à la main.
U0=5
U1=6
U2=7
U3=8
U4=9
U5=10
U1=6
U2=7
U3=8
U4=9
U5=10
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionint suite_bankok_inter(int n) { int cpt=0; int somme=0; while(cpt!=n+1) { if (cpt%2==0) { somme=(somme*somme)-3; printf("%d ||%d\n",cpt,somme); } else if (cpt%3==0) { somme=somme +2; printf("%d ||%d\n",cpt,somme); } else if (cpt%3!=0) { somme=(somme*somme)-1; printf("%d ||%d\n",cpt,somme); } cpt++; } }
Voici la version récursive
int suite_bankok_recursive(int n,int cpt,int somme) { if (n+1) { return somme; } else { if (cpt%2==0) { somme=somme*somme-3; printf("%d ||%d\n",cpt,somme); } else if (cpt%3==0) { somme=somme+2; printf("%d ||%d\n",cpt,somme); } else if (cpt%3!=0) { somme=somme*somme-1; printf("%d ||%d\n",cpt,somme); suite_bankok_recursive(n,cpt+1,somme); } } }
la fonction ne retourne rien, contrairement à l'énoncé.
le nom de la variable
le test
il serait plus élégant de n'avoir qu'une seule instruction
je pense que le while est correct, un
peux-tu tester le code?
le nom de la variable
sommeest bizarrement choisi, non?
le test
if (cpt%3!=0)me semble superflu. d'ailleurs, tu n'as prévu de
else.
il serait plus élégant de n'avoir qu'une seule instruction
printf("%d ||%d\n",cpt,somme);.
je pense que le while est correct, un
forserait cependant plus clair.
peux-tu tester le code?