Algorithme et suites
Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
-
srh0125
- Messages: 4
- Enregistré le: 28 Oct 2018, 14:53
-
par srh0125 » 28 Oct 2018, 15:06
Bonjour,
j’ai un dm a rendre via Edupython pr je n’y arrive pas pouvez vous m’aider?
On considere les suites Un et Vn définies pour tout entier naturel n par
Un+1=(3Un+Vn)/4
Vn+1=(2Un+3Vn)/5
U0=0
V0=2
1) écrire en langage naturel un algorithme pour afficher les termes de chaque suite pour un rang choisi par l’utilisateur
voici ce que j´ai fait:
variables: C réel V entier U réel
entrée: saisir C
initialisation: U=0; V=2
traitement:
U=(3U+V)/4
V=(2U+3V)/4
sortie: afficher U/afficher V
-
mathelot
par mathelot » 28 Oct 2018, 15:10
srh0125 a écrit:Bonjour,
j’ai un dm a rendre via Edupython pr je n’y arrive pas pouvez vous m’aider?
On considere les suites Un et Vn définies pour tout entier naturel n par
Un+1=(3Un+Vn)/4
Vn+1=(2Un+3Vn)/5
U0=0
V0=2
1) écrire en langage naturel un algorithme pour afficher les termes de chaque suite pour un rang choisi par l’utilisateur
voici ce que j´ai fait:
variables: N entier, V entier U réel
entrée: saisir N
initialisation: U=0; V=2
traitement:
tant que N>0 (rang souhaité)
U=(3U+V)/4
V=(2U+3V)/4
N=N-1
fin tant que
sortie: afficher U/afficher V
-
Ben314
- Le Ben
- Messages: 21709
- Enregistré le: 11 Nov 2009, 21:53
-
par Ben314 » 28 Oct 2018, 15:22
Salut,
mathelot a écrit:U=(3U+V)/4
V=(2U+3V)/4
Non, ça marche pas.
Si avant d'attaquer les deux affectations la variable U contient

et V contient

alors la première ligne met bien dans U la valeur

sauf qu'ensuite, ce qu'on met dans V, c'est

.
Avec un langage du style Python, ça marcherais sans doute en écrivant ça :
[ U , V ] = [ (3U+V)/4 , (2U+3V)/4 ]
(et c'est à cause de ce "sans doute" que j'aime franchement pas Python. Là par exemple, il faut aller chercher au fin fond de la doc. pour savoir s'il fait calcul,affectation,calcul,affectation ou bien calcul,calcul, affectation,affectation : je pense que c'est le deuxième, mais je suis pas certain à 100%)
Modifié en dernier par
Ben314 le 28 Oct 2018, 15:33, modifié 2 fois.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius
-
srh0125
- Messages: 4
- Enregistré le: 28 Oct 2018, 14:53
-
par srh0125 » 28 Oct 2018, 15:30
merci pour ton aide mais ce sera quoi comme boucle? un fin tant que ou autre?
je bloque vraiment désolée...
-
srh0125
- Messages: 4
- Enregistré le: 28 Oct 2018, 14:53
-
par srh0125 » 28 Oct 2018, 15:36
Ben314 a écrit:Salut,
mathelot a écrit:U=(3U+V)/4
V=(2U+3V)/4
Non, ça marche pas.
Si avant d'attaquer les deux affectations la variable U contient

et V contient

alors la première ligne met bien dans U la valeur

sauf qu'ensuite, ce qu'on met dans V, c'est

.
Avec un langage du style Python, ça marcherais sans doute en écrivant ça :
[ U , V ] = [ (3U+V)/4 , (2U+3V)/4 ]
(et c'est à cause de ce "sans doute" que j'aime franchement pas Python. Là par exemple, il faut aller chercher au fin fond de la doc. pour savoir s'il fait calcul,affectation,calcul,affectation ou bien calcul,calcul, affectation,affectation : je pense que c'est le deuxième, mais je suis pas certain à 100%)
merci de ton aide mais alors je mets quoi comme type de boucle? while? for i in range?
-
pascal16
- Membre Légendaire
- Messages: 6663
- Enregistré le: 01 Mar 2017, 12:58
- Localisation: Angoulème : Ville de la BD et du FFA. gare TGV
-
par pascal16 » 28 Oct 2018, 15:39
C'est une fonction intégrée à Python
pour corriger ton algo
traitement:
mettre U en mémoire
U=(3U+V)/4 <- U change de valeur
V=(2*mémoire+3V)/4
-
mathelot
par mathelot » 28 Oct 2018, 15:40
@Ben314: désolé, je n'ai pas vû l'erreur.
@srh: il faut mémoriser (dans la boucle) l'ancienne valeur de U pour l'utiliser dans le calcul de V.
Modifié en dernier par mathelot le 28 Oct 2018, 15:48, modifié 1 fois.
-
srh0125
- Messages: 4
- Enregistré le: 28 Oct 2018, 14:53
-
par srh0125 » 28 Oct 2018, 15:46
mathelot a écrit:@Ben314: désolé, je n'ai pas vû l'erreur.
@srh: il faut mémoriser (dans la boucle) l'ancienne valeur de U pour l'utiliser dans le calcul de V.
merci pour votre aide!!
comment je fais pour le mettre en memoire?
(c’est la premiere fois que je fais un algo sur Edupython)
-
mathelot
par mathelot » 28 Oct 2018, 15:51
variables: N entier, V réel, U réel, W réel
entrée: saisir N (c'est le compteur de boucle)
initialisation: U=0; V=2
traitement:
tant que N>0
W=U
U=(3U+V)/4
V=(2W+3V)/5
N=N-1
fin tant que
sortie: afficher U/afficher V[/quote]
N est le nombre (entier) de fois où l'on passe dans la boucle.
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 59 invités