Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
Discussion fermée
#1 01-09-2020 15:07:29
- Mouss
- Membre
- Inscription : 23-04-2020
- Messages : 105
algorithme et suites
Bonjour,
J'ai besoin d'aide pour cet exercice s'il vous plait.
Algorithme 1 :
u=2
Pour n allant de 1 à 5 faire
u=2*u-1
Afficher u
Fin pour
Algorithme 2 :
n=0
u=2
Tant que u<20 n<20 faire
n=n+1
u=3*u-5
Fin Tant que
Affiche u
1. Combien de valeurs sont affichées par chacun de ces algo ?
2. Faire tourner a la main ces algos ?
Ma question est la suivante : pour l'algo 1 avant de faire tourner l'algo on sait déjà qu'il y a 5 valeurs qui seront affichées mais pour l'algo 2 on ne peut pas savoir ?? Sauf si on fait tourner l'algo, mais on nous dit de faire tourner l'algo qu'à la 2eme question.
Dernière modification par yoshi (01-09-2020 17:26:45)
Hors ligne
#2 01-09-2020 17:15:29
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : algorithme et suites
Salut,
Fais tourner à la main l’algo 2 et tu vas t’apercevoir d’un petit problème : il ne s’arrêtera jamais !
Es tu sûr de la condition tant que ? Moi, j’aurais plutôt dit tant que n < 20 pour être sûr de l’arrêt de la boucle.
Pour les valeurs, réfléchis, c’est assez simple quand tu regardes le code.
Dernière modification par freddy (01-09-2020 17:17:07)
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#3 01-09-2020 17:28:17
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : algorithme et suites
Bon, tu viens de corriger !
Donc alors, combien de valeurs affichées ? Regarde après quoi est placée l’instruction « affiche u ».
Dernière modification par freddy (01-09-2020 17:32:18)
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#4 01-09-2020 17:39:38
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : algorithme et suites
Re,
Nan, c'est moi qui ai corrigé son code. Je suis également sûr que la condition est : "tant que n<20", sinon à quoi sert le compteur n ?
Les débuts en algorithmique sont suffisamment chaotiques comme ça, sans qu'on aille tendre des pièges...
Une suite pourrait être marrante :
On donne la suite auxiliaire $(V_n)$ telle que $V_n =U_n-\dfrac 5 2$ (pour la 2e suite $U_{n+1}=3U_n-5$)
1. Montrer que $(V_n)$ est une suite géométrique, en donner le 1er terme $V_0$ et la raison.
2. En déduire l'expression de $V_n$, puis celle de $U_n$ en fonction de n...
@+
[EDIT]
Je suis également sûr que la condition est : "tant que n<20"
Maintenant après avoir trouvé une prolongation de l'exo, je n'en suis plus si sûr que ça...
Après tout, pourquoi donner 2 fois le "même" exercice entraînant la "même" réponse ?
Dernière modification par yoshi (01-09-2020 18:11:36)
Arx Tarpeia Capitoli proxima...
Hors ligne
#5 02-09-2020 00:23:01
- Mouss
- Membre
- Inscription : 23-04-2020
- Messages : 105
Re : algorithme et suites
J'ai bien verifié, la condition c'est u < 20.
Quand je le teste sur python, il donne des valeurs à l'infini.
Est ce que il faut juste dire comme l'algo 1 est une boucle bornée on connaît le nombre de valeurs qui vont être affichées avant de le tester tandis que lorsque l' on a une boucle tant que, on ne peut pas prévoir à l'avance sans tester ?
Merci
Hors ligne
#6 02-09-2020 08:10:17
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : algorithme et suites
J'ai bien verifié, la condition c'est u < 20.
Quand je le teste sur python, il donne des valeurs à l'infini.
Est ce que il faut juste dire comme l'algo 1 est une boucle bornée on connaît le nombre de valeurs qui vont être affichées avant de le tester tandis que lorsque l' on a une boucle tant que, on ne peut pas prévoir à l'avance sans tester ?Merci
Salut,
Ce n’est pas possible, voilà tout, car c’est une boucle infinie sinon, en clair tu attends la fin de l’éternité pour connaître u !!!
Il y a une erreur dans ton code, c’est tout. D’ailleurs, tu vois bien sous Python ce qu’il se passe.
Et dans l’algorithme 2, il affiche u en sortie de boucle donc une fois, dans le 1, il l’affiche chaque fois dans la boucle, donc 5 fois.
Petite remarque : si tu remets en cause nos remarques et conseils, va voir ailleurs car yoshi, pour ne pas le citer, a longtemps enseigné l’algorithmique et Python au lycée donc ne remet pas en cause son expérience, c’est insultant !
Quant à moi, quand tu auras développé autant de programmes informatiques de calculs que j’en ai fait ces 35 dernières années, on pourra parler à égalité (je ne suis pas informaticien mais mon métier m’amène à utiliser l’outil informatique et des langages adaptés).
Salut !
Dernière modification par freddy (02-09-2020 10:04:38)
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#7 02-09-2020 09:40:42
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : algorithme et suites
Re,
freddy, tu t'emballes...
A la réflexion, et même si ça me chiffonne, je répète, je ne suis plus aussi sûr que ça que le code de Mouss soit faux, mais je n'ai pas de certitude à 100%...
Seulement, sans lancer l'algo en Python ou avec AlgoBox, pas évident du tout de savoir ce qu'il va se passer.
Mouss, que sais-tu des suites ?
Sais-tu prouver qu'une suite est croissante ou décroissante ?
On peut contourner le problème en faisant une analyse de la forme de l'algo...
1. Remarquer que le compteur n est là "pour la décoration", donc que si on s'en passe, rien ne change...
2. Remarquer que $u_{n+1} =3u_n-5$ et que si fabrique une fonction associée x --> $f(x)=3x-5$, c'est une fonction affine strictement croissante
Ce qui signifie que si $x_2>x_1$ alors $f(x_2)>f(x_1)$ et que si $x_2<x_1$ alors $f(x_2)<f(x_1)$
signe de $u_1-u_0$ ?
$u_1-u_0=3u_0-5-u_0=2u_0-5$ la bascule se produit avec $u_0=\frac 5 2$
Si $u_0<\frac 5 2$, et c'est le cas, alors $u_1-u_0<0$ et $u_1<u_0\leqslant<=2$, $u_1<2$
Le raisonnement précédent s'applique évidemment à $u_2-u_1$, et donc $u_2<2$
Conclusion :
- Si le prof qui a donné l'exo, ne s'est pas trompé, alors on constate qu'effectivement puisque on aura toujours u<2, la boucle est infinie et le nombre de valeurs est infini. Traiter l'algo sur 4 ou 5 itérations permet ensuite de constater qu'effectivement, à partir de n=2 toutes les valeurs seront négatives
- Si le prof qui a donné l'e,xo, ne s'est pas trompé, alors on constate qu'avec $_0=3$, la boucle n'est pas infinie...
Quant à déterminer alors le nombre de valeurs inférieures à 20, pas évident(maximum 5 parce que ça va très vite)....
- S'il y a erreur et que c'est bien "Tant que n<20", avec u =2, alors il y aura 20 valeurs.
Questions ?
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#8 02-09-2020 10:46:49
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : algorithme et suites
Re,
@yoshi, il n’y aura pas 20 valeurs affichées mais une seule, la dernière calculée, puisque l’instruction « affiche u » est en sortie de boucle.
Je pense que c’est ce que le prof voulait qu’il voit.
Je te dirai pourquoi je m’énerve un peu :-)
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#9 02-09-2020 11:13:48
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 948
Re : algorithme et suites
Re,
@yoshi, il n’y aura pas 20 valeurs affichées mais une seule, la dernière calculée
Tiens, c'est vrai ! Ça ne m'avait pas frappé !!!
C'est LA différence entre les 2 algos...
Bravo compère !
Donc sa réponse devrait être :
En principe, l'algo, n'affichera qu'une seule valeur.
En principe, parce que la boucle est infinie et qu'on n'en sort donc pas, comme on peut le voir en le "faisant tourner à la main" (ou en Python)...
Il n'empêche pour l'algo 2 que
Avec "Tant que u<20:"
Si u =2, il y a bien boucle infinie et donc rien d'affiché,
mais que
si u =3, la boucle s'arrête très vite (pour n=4), que u sera supérieur ou égal à 20...
Donc erreur quelque part probable à 70 %...
Soit dans le Tant que, soit sans l'initialisation de u...
Mais alors, ça nous ferait 3 sujets de suite avec une erreur d'énoncé !
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
Pages : 1
Discussion fermée