Soit $f$ une fonction définie sur un intervalle $I$.
Si $f$ est strictement croissante sur $I$, alors pour tous $a$, $b \in I$ :
$$a < b \;\Longleftrightarrow\; f(a) < f(b)$$
Si $f$ est strictement décroissante sur $I$, alors pour tous $a$, $b \in I$ :
$$a < b \;\Longleftrightarrow\; f(a) > f(b)$$
Si on connaît le sens de variation de $f$ sur un intervalle contenant $a$ et $b$, on peut comparer $f(a)$ et $f(b)$ sans calcul :
La fonction carré $f(x)=x^2$ est strictement croissante sur $[0\,;\,+\infty[$.
Comme $3 < 5$, on déduit : $f(3) < f(5)$, c'est-à-dire $\mathbf{9 < 25}$. ✓
Un tableau de variations résume graphiquement le comportement d'une fonction : il indique les intervalles sur lesquels la fonction est croissante ou décroissante, ainsi que les valeurs remarquables prises par la fonction à chaque extrémité d'intervalle.
Exemple 1 — fonction croissante :
$f$ est strictement croissante sur $[a\,;\,b]$, avec $f(a)$ la valeur minimale et $f(b)$ la valeur maximale.
Exemple 2 — croissante puis décroissante :
$f$ est strictement croissante sur $[a\,;\,c]$, puis décroissante sur $[c\,;\,b]$. $f(c)$ est le maximum.
Voici le tableau de variations d'une fonction $g$ définie sur $[-2\,;\,5]$ :
La courbe ci-dessous représente une fonction $h$ définie sur $\mathbb{R}$.
$h(x) = -0{,}2x^3 + 0{,}6x + 2$ est définie sur $\mathbb{R}$. Extremums locaux en $x=-1$ (minimum local, $h(-1)=1{,}6$) et $x=1$ (maximum local, $h(1)=2{,}4$).
$h$ est strictement décroissante sur $]-\infty\,;\,-1]$, strictement croissante sur $[-1\,;\,1]$, strictement décroissante sur $[1\,;\,+\infty[$.
On donne le tableau de variations de $f$ sur $[1\,;\,10]$ :
Comparer, lorsque c’est possible, les valeurs suivantes :
Règle :
si $a < b$ et $f$ est strictement croissante sur un intervalle contenant $a$ et $b$, alors $f(a) < f(b)$ (l’ordre est conservé).
Si $f$ est strictement décroissante, alors $f(a) > f(b)$ (l’ordre est inversé).
Soit $f$ une fonction définie sur un intervalle $I$ et $c \in I$.
La courbe ci-contre représente une fonction $f$ définie sur $[-2\,;\,5]$.
Dans un tableau de variations :
Pour $x \in [0\,;\,1]$ : $x^2 \leq x$ (la parabole est en dessous de la droite).
Pour $x \in [1\,;\,+\infty[$ : $x^2 \geq x$ (la parabole est au-dessus de la droite).
Les deux courbes se coupent en $(0\,;\,0)$ et $(1\,;\,1)$.
Preuve. Étudions le signe de $x^2 - x = x(x-1)$ :
Soit $f$ une fonction et $a$, $b$ deux réels distincts du domaine de $f$.
Le taux d'accroissement de $f$ entre $a$ et $b$ est :
$$\tau = \frac{f(b) - f(a)}{b - a}$$
Il mesure la variation moyenne de $f$ par unité d'accroissement de $x$ entre $a$ et $b$.
Pour $f(x) = mx + p$, le taux d'accroissement entre deux réels $a$ et $b$ quelconques ($a \neq b$) vaut toujours $m$ :
$$\tau = \frac{f(b) - f(a)}{b - a} = \frac{(mb+p)-(ma+p)}{b-a} = \frac{m(b-a)}{b-a} = m$$
Ainsi, $m$ est le taux d'accroissement constant de la fonction affine : quand $x$ augmente de $1$, $f(x)$ augmente de $m$ (si $m > 0$) ou diminue de $|m|$ (si $m < 0$).
Pour $f(x) = 3x - 2$ (avec $m = 3$, $p = -2$) :
Soit $f(x) = mx + p$ et soient $a < b$ deux réels. On a :
$$f(b) - f(a) = (mb + p) - (ma + p) = m(b - a)$$
Comme $b > a$, on a $b - a > 0$, donc :
$m > 0 \rightarrow$ strictement croissante
$m = 0 \rightarrow$ constante
$m < 0 \rightarrow$ strictement décroissante
Soit $f(x) = -2x + 3$.
$f(x) = -2x + 3$, $m = -2 < 0$ donc $f$ est strictement décroissante sur $\mathbb{R}$.
Un agriculteur dispose de $40$ m de clôture pour entourer un enclos rectangulaire en utilisant un mur comme quatrième côté. Si le côté perpendiculaire au mur mesure $x$ m ($0 < x < 20$), alors l’aire de l’enclos est $A(x) = x(40 - 2x) = -2x^2 + 40x$.
1. $A(x) = -2x^2+40x = -2(x^2-20x) = -2[(x-10)^2-100] = -2(x-10)^2 + 200$. □
2. Pour tout $x \in ]0\,;\,20[$, $(x-10)^2 \geq 0$ donc $A(x) \leq 200$, avec égalité en $x=10$. L’aire maximale vaut $A_{\max} = \mathbf{200}$ m², atteinte pour $\mathbf{x = 10}$ m.
Une entreprise vend un article au prix unitaire de $(30 - x)$ € et en produit $x$ unités (avec $0 \leq x \leq 30$). Le coût de production total est de $5x$ €.
1. $B(x) = x(30-x)-5x = -x^2+25x = -(x-12{,}5)^2+156{,}25$.
2–3. $B$ est de degré 2, coefficient dominant $-1<0$ : maximum en $x_0 = \dfrac{25}{2} = 12{,}5$ unités, $B_{\max} = \mathbf{156{,}25}$ €.
def f(x): return -2 * x**2 + 8 * x + 1 def decrire_variations(xmin, xmax, pas=0.5): x = xmin while x < xmax: x_suivant = x + pas if f(x_suivant) > f(x): sens = "croissante" elif f(x_suivant) < f(x): sens = "decroissante" else: sens = "constante" print(f"Entre {x} et {x_suivant} : f est {sens}") x = x_suivant decrire_variations(0, 6)
Entre 0.0 et 0.5 : f est croissanteEntre 1.5 et 2.0 : f est croissanteprint(f"f({x})={f(x):.2f}, f({x_suivant})={f(x_suivant):.2f} : {sens}")pas=0.1 : entre 1,9 et 2,0 → croissante ; entre 2,0 et 2,1 → décroissante. La transition est détectée.Cherche le maximum d'une fonction par balayage (parcours de valeurs avec un pas).
from math import * def f(x): return -0.3 * x**2 + 1.8 * x + 0.5 def maximum_balayage(xmin, xmax, pas=0.1): x_max = xmin f_max = f(xmin) x = xmin while x <= xmax: if f(x) > f_max: f_max = f(x) x_max = x x = x + pas return x_max, f_max print(maximum_balayage(0, 6)) print(maximum_balayage(0, 6, 0.01)) print(maximum_balayage(0, 6, 0.001))
maximum_balayage.maximum_balayage(0, 6, 1.0) :
x | f(x) | f(x)>f_max? | x_max, f_max |
|---|---|---|---|
| $0$ | |||
| $1$ | |||
| $2$ | |||
| $3$ | |||
| $4$ |
1. La fonction parcourt $x$ de xmin à xmax par pas de pas. Elle mémorise l’abscisse et la valeur du plus grand $f(x)$ rencontré, puis renvoie le couple $(x_{\max},\,f_{\max})$.
2. Tableau d’exécution de maximum_balayage(0, 6, 1.0) :
x | f(x) | f(x)>f_max ? | x_max ; f_max |
|---|---|---|---|
| $0$ | $0{,}5$ | Non (init.) | $0\ ;\ 0{,}5$ |
| $1$ | $2{,}0$ | Oui | $1\ ;\ 2{,}0$ |
| $2$ | $2{,}9$ | Oui | $2\ ;\ 2{,}9$ |
| $3$ | $3{,}2$ | Oui | $3\ ;\ 3{,}2$ |
| $4$ | $2{,}9$ | Non | $3\ ;\ 3{,}2$ |
maximum_balayage(0, 6) ? Par maximum_balayage(0, 6, 0.001) ?maximum_balayage(0, 6) → (3.0, 3.2) ; maximum_balayage(0, 6, 0.001) → (3.0, 3.2).f(x) > f_max par f(x) < f_min (et renommer x_min, f_min) pour chercher le minimum.L'algorithme de dichotomie localise un extremum avec une précision arbitraire en divisant l'intervalle par 2 à chaque étape.
def g(x): return -x**2 + 4*x - 1 def maximum_dicho(a, b, epsilon=0.001): """Cherche le maximum de g sur [a,b] par dichotomie.""" while b - a > epsilon: m = (a + b) / 2 # milieu m1 = (a + m) / 2 # milieu gauche m2 = (m + b) / 2 # milieu droit if g(m1) > g(m2): b = m # le max est a gauche else: a = m # le max est a droite return (a + b) / 2, g((a + b) / 2) print(maximum_dicho(0, 4))
b - a > epsilon ? Pourquoi l'algorithme s'arrête-t-il ?print(maximum_dicho(0, 4)) ? Comparer avec la valeur exacte.b - a > epsilon : l’intervalle est plus large que la précision souhaitée. Il est divisé par 2 à chaque étape → convergence garantie.maximum_dicho(0, 4) → (2.000488…, 2.99999…) ≈ $(2\,;\,3)$.def h(x): return x**2 - 6*x + 5 def minimum_dicho(a, b, epsilon=0.001): while b - a > epsilon: m = (a + b) / 2 m1 = (a + m) / 2 m2 = (m + b) / 2 if h(m1) < h(m2): b = m # min à gauche else: a = m # min à droite return (a+b)/2, h((a+b)/2) print(minimum_dicho(0, 6)) # → (3.0, -4.0) car h(3)=-4