Algorithme
Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
-
Jilou
- Membre Naturel
- Messages: 68
- Enregistré le: 24 Oct 2011, 14:28
-
par Jilou » 07 Mar 2012, 12:48
Bonjour,
je dois faire un algorithme pour la rentrée donc voici lénoncée:
"On se propose de déterminer un maximum local d'une fonction à l'aide d'un algorithme.
On choisit le fonction f définie sur R par f(x)= -x^3+2x^2 pour effectuer les tests.
Il semble daprès le graphique que la fonction présente un maximum local en x=xm
Voici le principe de l'algo:
On choisit un intervalle [a;b] tel que xm E[a;b]
On suppose que f est croissante sur [a;xm]et décroissante sur [xm;b]
On note h= b-a la largeur de l'intervalle.
Tant que h est supérieur à une précision choisie
-on calcul yG= f(xG) avec xG= a+1/3h
-on calcul yD= f(xD) avec xD= b-1/3h
Si yG est inférieur ou égal à yD alors
-on peut exclure le premier tiers de l'intervalle
-on remplace donc b par b-1/3h (et on recommence avec ce nouvel intervalle)
Fin du si
on calcul h=b-a la nouvelle largeur de l'intervalle (les deux tiers du précédent)
on affiche a+b/2 et f(a+b/2) pour vérifier le programme
Fin du tant que."
Donc je doit retranscrire ce programme dans le langage de la calculatrice (Moi j'ai une TI 83 plus fr ^^)
Donc voila ce que j'ai fait:
Prompt A, B
B-A---> H
While H>P
A+H/3----> G
Y1G-----> X
B-H/3----> D
Y2D-----> Y
If Y1G <= Y2D
Voila ce que j'ai fait pour l'instant, je bloque à partir de là car je ne sais pas vraiment comment la faire (et de plus je ne suis pas vraiment caler du coter des algos!)
Si quelqu'un pourrait m'aider pour la suite sa serait vrament sympa
Merci d'avance à celui ou celle qui m'aidera ^^
-
chan79
- Membre Légendaire
- Messages: 10330
- Enregistré le: 04 Mar 2007, 19:39
-
par chan79 » 07 Mar 2012, 15:00
Jilou a écrit:Bonjour,
je dois faire un algorithme pour la rentrée donc voici lénoncée:
"On se propose de déterminer un maximum local d'une fonction à l'aide d'un algorithme.
On choisit le fonction f définie sur R par f(x)= -x^3+2x^2 pour effectuer les tests.
Il semble daprès le graphique que la fonction présente un maximum local en x=xm
Voici le principe de l'algo:
On choisit un intervalle [a;b] tel que xm E[a;b]
On suppose que f est croissante sur [a;xm]et décroissante sur [xm;b]
On note h= b-a la largeur de l'intervalle.
Tant que h est supérieur à une précision choisie
-on calcul yG= f(xG) avec xG= a+1/3h
-on calcul yD= f(xD) avec xD= b-1/3h
Si yG est inférieur ou égal à yD alors
-on peut exclure le premier tiers de l'intervalle
-on remplace donc b par b-1/3h (et on recommence avec ce nouvel intervalle)
Fin du si
on calcul h=b-a la nouvelle largeur de l'intervalle (les deux tiers du précédent)
on affiche a+b/2 et f(a+b/2) pour vérifier le programme
Fin du tant que."
Donc je doit retranscrire ce programme dans le langage de la calculatrice (Moi j'ai une TI 83 plus fr ^^)
Donc voila ce que j'ai fait:
Prompt A, B
B-A---> H
While H>P
A+H/3----> G
Y1G-----> X
B-H/3----> D
Y2D-----> Y
If Y1G <= Y2D
Voila ce que j'ai fait pour l'instant, je bloque à partir de là car je ne sais pas vraiment comment la faire (et de plus je ne suis pas vraiment caler du coter des algos!)
Si quelqu'un pourrait m'aider pour la suite sa serait vrament sympa
Merci d'avance à celui ou celle qui m'aidera ^^
salut
je ne connais pas la TI83 mais un peu algobox
voilà un code qui semble convenir et qui pourra peut-être t'aider
[img]
[IMG]http://img42.imageshack.us/img42/6231/alg.png[/img][/IMG]
-
Jilou
- Membre Naturel
- Messages: 68
- Enregistré le: 24 Oct 2011, 14:28
-
par Jilou » 07 Mar 2012, 15:09
OOOOOOOh merciii beaucoup! Il est effectivement très similaire à celui que j'aimerai faire!
Mais "on peut exclure le premier tiers" on n'était pas obligé de le traduire, car c'était ça qui m'empêcher d'avancer dans mon programme.
-
chan79
- Membre Légendaire
- Messages: 10330
- Enregistré le: 04 Mar 2007, 19:39
-
par chan79 » 07 Mar 2012, 15:19
Jilou a écrit:OOOOOOOh merciii beaucoup! Il est effectivement très similaire à celui que j'aimerai faire!
Mais "on peut exclure le premier tiers" on n'était pas obligé de le traduire, car c'était ça qui m'empêcher d'avancer dans mon programme.
on exclut soit le premier tiers (ligne 15) soit le troisième tiers (ligne 20) selon les cas.
Ainsi l'intervalle entre a et b diminue d'un tiers à chaque fois tant que la précision voulue n'est pas atteinte
-
Jilou
- Membre Naturel
- Messages: 68
- Enregistré le: 24 Oct 2011, 14:28
-
par Jilou » 07 Mar 2012, 15:29
chan79 a écrit:on exclut soit le premier tiers (ligne 15) soit le troisième tiers (ligne 20) selon les cas.
Ainsi l'intervalle entre a et b diminue d'un tiers à chaque fois tant que la précision voulue n'est pas atteinte
Ah ouiii, je comprend mieux maintenant c'est inclut dans le calcul y'a pas besoin de l'exprimer!
Merci vous m'avez était d'une trés grande aide :we:
Bonne aprés midi

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