question

Retrouver tous les sujets résolus.
Répondre
lola

question

Message par lola » dim. 15 mai 2022 12:07

Bonjour
J'ai cet exercice
U=2
for i in range ( ):
U=U**2-3*U+1
print $(U)

je dois trouver quoi mettre dans la ( ) en sachant que le programme donne 11 à la fin...
Je n'y arrive pas... Merci beaucoup
sos-math(21)
Messages : 10334
Enregistré le : lun. 30 août 2010 11:15

Re: question

Message par sos-math(21) » mar. 17 mai 2022 14:14

Bonjour,
cet algorithme calcule successivement la valeur obtenue quand on part de \(2\) et qu'on applique plusieurs fois le même programme de calcul déterminé par \(f(x)=x^2-3x+1\).
Calcule d'abord \(f(2)\), puis l'image de ce résultat par \(f\), puis tu recommences encore jusqu'à obtenir \(11\). Le nombre de fois où tu as appliqué la fonction te donnera le nombre à mettre dans le range().
Bonne continuation
lola2

Re: question

Message par lola2 » mar. 17 mai 2022 14:49

ok merci mais comment recommencer jusqu'à avoir 11 ?
sos-math(21)
Messages : 10334
Enregistré le : lun. 30 août 2010 11:15

Re: question

Message par sos-math(21) » mar. 17 mai 2022 15:16

Bonjour,
il faut suivre ce que je t'ai dit :
\(f(2)=val_1\)
\(f(val_1)=val_2\)
\(f(val_2)=val_3\)
....
Jusqu'à ce que tu aies 11.
Bonne continuation
lola

Re: question

Message par lola » mar. 17 mai 2022 15:45

Merci, j'ai trouvé !

Est ce que vous pourriez me donner une petite lecon sur
les instruction conditionnelle (Si .. Alors..)
Boucle Pour
Boucle Tant que
je n'arrive jamais à savoir quand est ce que je dois reprendre la valeur précédente ou pas en fait... or j'ai controle commun de maths sur toute l'année demain... J'ai peur.

Merci beaucoup
sos-math(21)
Messages : 10334
Enregistré le : lun. 30 août 2010 11:15

Re: question

Message par sos-math(21) » mar. 17 mai 2022 15:55

Bonjour,
cela va être difficile de revoir tout le programme d'algorithmique d'ici demain.
Peut-être peux-tu consulter ce cours : https://vincent-indy.ent.auvergnerhonea ... 7822430476
Il y a aussi les excellentes ressources d'Yvan Monka : https://www.maths-et-tiques.fr/index.ph ... orithmique
Bonnes révisions
lola

Re: question

Message par lola » mar. 17 mai 2022 16:08

Merci !

pourriez vous juste me dire dans quel type de boucles on doit reprendre la valeur "du dessus" ? (Celle qu'on a calculé avant)

merci
lola

Re: question

Message par lola » mar. 17 mai 2022 16:20

Par exemple ici https://www.cjoint.com/data3/LErptJeOHq4_boucle.png

est ce que U va changer (je sais que i oui mais U je sais pas)...

Merci
sos-math(21)
Messages : 10334
Enregistré le : lun. 30 août 2010 11:15

Re: question

Message par sos-math(21) » mar. 17 mai 2022 16:36

Bonjour,
on reprend la valeur précédente dès qu'il y a une affectation "récursive" c'est-à-dire lorsqu'on utilise le contenu d'une variable pour faire un calcul et que l'on remet ce calcul dans cette variable :\(U\leftarrow f(U)\). C'est le cas de ton exemple.
Autres exemples :
\(V\leftarrow 3*V+5\)
\(Z\leftarrow 8*Z^2-3\)
En revanche, si on a :
\(W\leftarrow 5^N\), ce n'est pas une affectation "récursive" car on n'utilise pas le contenu de la variable \(W\) pour re-affecter \(W\).
Est-ce plus clair ?
sos-math(21)
Messages : 10334
Enregistré le : lun. 30 août 2010 11:15

Re: question

Message par sos-math(21) » mar. 17 mai 2022 16:37

Dans ton exemple,
\(U\) va bien changer et on est bien sur une réutilisation de la valeur précédente pour trouver la valeur suivante et la mettre à la place.
Bonne continuation
Répondre