Seconde 4 Algorithme : Extrema d`une fonction avec la

publicité
Seconde 4
Algorithme : Extrema d’une fonction avec la calculatrice
2010-2011
On se propose d’écrire un algorithme déterminant les valeurs approchées du minimum et du
maximum d’une fonction définie sur un intervalle [a ;b] donné.
On implémentera cet algorithme sur la calculatrice afin de déterminer Ymin et Ymax pour
des valeurs Xmin et Xmax données et pour une fonction donnée.
Principes de l’algorithme
•
On va balayer l’intervalle [a ;b] avec un pas h fixé au départ et mettre à jour trois
variables x_courant (abscisse courante de l’intervalle), min_courant (minimum
courant) et max_courant (maximum courant)
•
Pour chaque valeur de x comprise dans l’intervalle [a ;b], on teste si l’image de x par
f est supérieure au Maximum courant.
Si c’est le cas le maximum courant prend pour valeur l’image de x courante
(f(x_courant)).
•
On procède de même pour le minimum.
•
Une fois l’intervalle [a ;b] balayé, on affiche les valeurs du Maximum et du Minimum
1) Ecrire l’algorithme ainsi décrit
2) Implémenter cet algorithme sur une calculatrice
3) Tests du programme
•
Tester le programme pour la fonction carré sur l’intervalle [-3;3]
•
Tester le programme pour la fonction f définie par f(x) = x3 -6x + 2 sur l’intervalle [2;2]
•
Tester ce programme pour la fonction inverse sur l’intervalle [-2;2]
Que remarque –t-on ?
Donner une explication.
1
Seconde
Algorithme : Extremums d’une fonction avec la calculatrice
CORRECTION
1) Ecrire l’algorithme ainsi décrit
Algorithme Min Max
Entrées
pas
x_courant : abscisse courante
min_courant, max_courant
Traitement
Lire « pas », pas
x_courant a
min_courant f(a)
max_courant f(a)
tant que x_courant < b
x_courant x_courant + pas
Si f(x_courant) < min_courant alors
min_courant f(x_courant)
finsi
Si f(x_courant) > max_courant alors
max_courant f(x_courant)
finsi
Fin tant que
Sorties
Afficher « Maximum sur [a ;b] », max_courant
Afficher « Minimum sur [a ;b] », min_courant
2
Seconde
Algorithme : Extremums d’une fonction avec la calculatrice
CORRECTION
2) Implémenter cet algorithme sur une calculatrice
Implémentation sur calculatrice TI 83 ou TI84
: Input H
PRGM I/O
choix 1 (Input)
: Xmin X
VARS choix 1 (Window)
:Y1 M
VARS Y-VARS – choix 1 (Function)
choix 1 (Xmin)
STO
choix 1 (Y1)
:Y1 N
:While X < Xmax
PRGM CTL
choix 5 (While)
:If Y1 > M
PRGM CTL
choix 1 (If)
:Then
PRGM CTL
choix 2 (Then)
PRGM CTL
choix 7 (End)
PRGM I/O
Choix 3 (Disp)
2ND TEST pour ≤
:X+HX
: Y1 M
: End
:If Y1 < N
:Then
: Y1 N
: End
:End
M Ymax
N Ymin
:Disp “MAX : ”,M
:Disp “MIN : ”,N
3
Seconde
Algorithme : Extremums d’une fonction avec la calculatrice
CORRECTION
Implémentation sur calculatrice TI NSPIRE
Il faut au préalable dans un onglet contenant la fenêtre graphique créer les
variables, xmin, xmax, ymin et ymax en les associant aux nombres figurant sur les
axes du repère (avec un droit : ctrl menu puis 5. Stocker)
Define extrema()
Prgm
Local pas,x
x ≔ xmin
ymin ≔ f1(x)
ymax ≔ f1(x)
Request "Pas ? ",pas
While x < xmax
x ≔ x + pas
If f1(x) < xmin Then
ymin ≔ f1(x)
EndIf
If f1(x) > xmax Then
ymax ≔ f1(x)
EndIf
EndWhile
Disp "Maxi = ",ymax
Disp "Min = ",ymin
EndPrgm
4
Seconde
Algorithme : Extremums d’une fonction avec la calculatrice
CORRECTION
Implémentation sur calculatrice TI 89
:extrema()
:Prgm
:xmin x
:y1(x) ymin
:y1(x) ymax
:Input "Pas : ",pas
:While x < xmax
:x + pas x
:If y1(x) < ymin Then
:y1(x) ymin
:EndIf
:If y2(x) > ymax Then
:y1(x) ymax
:EndIf
:EndWhile
:Disp "Maxi = ",ymax
:Disp "Min = ",ymin
:EndPrgm
Implémentation sous calculatrice Casio
?H
SHIFT PRGM F1
Xmin X
VARS V-WIN F1
Y1 M
VARS F2 F1 1
Y1 N
While X < Xmax
SHIFT PRGM F1 F1
X+HX
If Y1 > M
SHIFT PRGM F1 F1 VARS F1 1 SHIFT PRGM F1 F3
Then Y1 M
SHIFT PRGM F1 F2
IfEnd
SHIFT PRGM F1 F4
:If Y1 < N
Then Y1 N
IfEnd
WhileEnd
SHIFT PRGM F2
M Ymax
N Ymin
“MIN :“:M SHIFT ALPHA F2 (pour “) et SHIFT PRGM F3 (pour :)
“MAX :”:N 5
Seconde
Algorithme : Extremums d’une fonction avec la calculatrice
CORRECTION
3) Tests du programme
•
Tester ce programme pour la fonction carré sur l’intervalle [-3;3]
Le minimum calculé est 0 et le maximum 9.
•
Tester ce programme pour la fonction f définie par f(x) = x3 - 6x + 2 sur l’intervalle
[-2;2]
Le minimum calculé est environ -3,7 et le maximum environ 7,7.
•
Tester ce programme pour la fonction inverse sur l’intervalle [-2;2]
Que remarque –t-on ?
Donner une explication.
Le programme affiche une division par zéro.
En effet, la fonction inverse n’est pas définie sur [-2 ;2] car 0 n’ pas d’image par la
fonction inverse.
Donc le balayage de l’intervalle [-2 ;2] conduit à division par zéro lorsque x_courant = 0.
6
Téléchargement