Un petit algorithme informatique [Besoin de correction]
Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
-
Maxime-59
- Membre Relatif
- Messages: 187
- Enregistré le: 26 Sep 2009, 23:25
-
par Maxime-59 » 03 Oct 2010, 10:14
Bonjour
J'ai un exercice avec un algorithme informatique et j'ai besoin de savoir si j'ai bon ou pas.
Déclaration
* On note trois entiers naturels n, i et j
Initialisation
* Donner une valeur à n
* i et j reçoivent la valeur 1
Traitement
* On répète les opérations suivantes :
j reçoit j * i
i reçoit i + 1
Jusqu'à obtenir n +1 pour la valeur de i
* Afficher la valeur de j
1) Si la variable n reçoit 2, quelle sera la valeur de j à la fin ?
2) " " " " " 3 " " " " " " " ?
3) " " " " " 5 " " " " " " "
4) " " " " 7 "" " " " " "
J'ai donc fait ceci :
n = 2
i = 1
j = 1
j = j * i = 1 * 1 = 1
i = 1+1 = 2
Répétage des opérations
j = 1 * 2
i = 2+1 = 3
Répétage des opérations
j = 1 * 3
i = 3 + 1
Opérations terminé, on obtient j = n +1
Il faut donc faire comme ceci ?
Merci
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 03 Oct 2010, 10:35
salut,
tu t'es planté
j = 1 * 2 = 2
j = 1 * 3
Or ici, tu mets j=1, ce qui est pas bon.
J'ai pas vérifié le reste, c'est pe juste, pe pas...
Pe pourrais-tu rappeler à chaque itération dans la boucle (c'est mieux que dire répétage...), ce que valent i, j, ainsi que la formule permettant de calculer le nouveau j ainsi que le nouveau i.
la vie est une fête

-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 03 Oct 2010, 10:37
rq :
lorsqu'on a
j = j*i,
et i =i+1
si on pose
j=u_n
alors les termes respectifs de u_n donnent
u_1 = 1, u_2=u_1*2, u_3 = u_2*3=u_1*2*3,...
pe qu'on peut espérer trouver une factorielle pour u_n, cad pour j en sortie de boucle
la vie est une fête

-
Maxime-59
- Membre Relatif
- Messages: 187
- Enregistré le: 26 Sep 2009, 23:25
-
par Maxime-59 » 03 Oct 2010, 10:52
Okok donc reprenons depuis le début
n = 2
j = 1
i = 1
j reçoit j * i donc = 1 * 1
i reçoit i + 1 donc = 1 + 1
Itération dans la boucle
j reçoit j * i = 1 * 2
i reçoit i + 1 donc = 2 + 1
Itération dans la boucle
j reçoit j * i donc = 1 * 3
i reçoit i + 1 donc = 3 +1
Fin, c'est bien ça ?
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 03 Oct 2010, 11:01
re,
si jte dis que c'est faux, c'est ptet que ya qqch de faux lol
j reçoit j * i = 1 * 2 = 2
i reçoit i + 1 donc = 2 + 1 = 3
Itération dans la boucle
j reçoit j * i donc = 1 * 3
i reçoit i + 1 donc = 3 +1
la vie est une fête

-
Maxime-59
- Membre Relatif
- Messages: 187
- Enregistré le: 26 Sep 2009, 23:25
-
par Maxime-59 » 03 Oct 2010, 11:43
Je ne vois pas ou est mon errreur ..
-
fatal_error
- Membre Légendaire
- Messages: 6610
- Enregistré le: 22 Nov 2007, 12:00
-
par fatal_error » 03 Oct 2010, 12:10
j reçoit j * i = 1 * 2 = 2
i reçoit i + 1 donc = 2 + 1 = 3
Ici, j vaut 2, et i vaut 3
Itération dans la boucle
j reçoit j * i donc = 1 * 3
Dans le remplacement il y a clairement une erreur puis que pour l'instant j vaut 2!
On a donc
j recois j*i donc = 2*3 (et non pas 1!)
i reçoit i + 1 donc = 3 +1
la vie est une fête

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 68 invités