Vous êtes sur la page 1sur 5

Méthode des rectangles - Mathweb.fr - Implémentation en Python https://www.mathweb.

fr/euclide/methode-des-rectangles/
Mon compte (https://www.mathweb.fr/euclide/mon-compte/)

(https://www.mathweb.fr/euclide/)

 (https://www.linkedin.com/in/st%C3%A9phane-pasquet)  (https://www.youtube.com/@stephanepasquet)  (https://www.tiktok.com/@histoire2maths)

Mathématiques  A X 
LTE Python  Cours par webcam (https://courspasquet.fr)

Boutique (https://mathweb.fr/euclide/vente)

Galerie (https://www.mathweb.fr/euclide/galerie-fonds-decran-mathematiques/)

Contact (https://www.mathweb.fr/euclide/contact/)  (https://www.mathweb.fr/euclide/#)

La méthode des rectangles est une méthode algorithmique permettant


d’encadrer l’aire d’un domaine sous une courbe représentative de fonction
et sur un intervalle donné.

Au menu sur cette page...


1. Principe mathématique de la méthode des rectangles
2. Implémentation en Python

Principe mathématique de la
(https://www.tiktok.com
méthode des rectangles /@histoire2maths)

Considérons une fonction f continue sur un intervalle [a ; b], et subdivisons


cet intervalle en n, c’est-à-dire coupons-le en n petits intervalles de même
amplitude. Ces subdivisions seront les « bases » de rectangles.

Notons:

b−a (https://fr.tipeee.com
xk = a + k
n /mathwebfr/)

pour k entier compris entre 0 et n inclus, et considérons les rectangles:

1 of 5 12/15/2023, 12:06 PM
Méthode des rectangles - Mathweb.fr - Implémentation en Python https://www.mathweb.fr/euclide/methode-des-rectangles/
▪ Ik , de base [xk ; xk+1 ] et de hauteur f(xk ) pour 0 ⩽ k ⩽ n − 1;
Les livres au format
▪ (S_k), de base ([x_k;x_{k+1}]) et de hauteur (f(x_{k+1})) pour \( 0\leqslant
k \leqslant n-1).
PDF

Livre de cours et
d'exercices
corrigés (Maths
expertes) édition
2023
7,00€

À gauche : les rectangles Ik sur [0;1] subdivisé en n = 5 Livre de cours et

À droite : les rectangles Sk sur [0;1] subdivisé en n = 5 d'exercices


corrigés
(Seconde
Intuitivement, plus le nombre de rectangles grandit, plus les sommes des générale) édition

aires des rectangles vont se rapprocher vers l’intégrale de la fonction sur le 2023-2024

même intervalle. 10,00€

Autrement écrit, si An (I) et An (S) représentent respectivement la somme Livre de cours et


d'exercices
des aires des rectangles I et S, alors:
corrigés
b
lim An (I) = lim An (J) = ∫
(Première
f(x)dx.
n→+∞ n→+∞ a spécialité) édition
2023-2024
De plus, si f est strictement croissante sur [a ; b]:
10,00€
b
An (I) ⩽ ∫ f(x)dx ⩽ An (J). Livre de cours et
a
d'exercices
Si la fonction est strictement décroissante, l’encadrement est bien entendu corrigés
inversé. (Terminale
spécialité) édition
Ainsi, si on arrive à calculer An (I) et An (J), on aura un encadrement de 2023-2024
l’intégrale. 10,00€

Implémentation en Python Python en


mathématiques
au lycée
1. def integrale(f,a,b,n): 10,00€
2. longueur = (b - a) / n
3. aire_inf , aire_sup = 0 , 0
Sources LaTeX
4. for k in range (n):
5. aire_inf = aire_inf + longueur * f(a du livre de cours
+ k * longueur ) et d'exercices
6. aire_sup = aire_sup + longueur * f(a corrigés
+ (k+1) * longueur )
2 of 5 12/15/2023, 12:06 PM
Méthode des rectangles - Mathweb.fr - Implémentation en Python https://www.mathweb.fr/euclide/methode-des-rectangles/
7. return aire_inf , aire_sup (Seconde
8.
générale) édition
9. aire_inf , aire_sup = integrale( lambda x:
2023-2024
x*x , 0 , 1 , 100 )
10. print("{} < integrale < 30,00€

{}".format(aire_inf,aire_sup))
Sources LaTeX

Il n’y a rien de bien compliqué du point de vue algorithmique; en effet, du livre de cours
et d'exercices
▪ on commence par définir l’amplitude des subdivisions → ligne 2 corrigés

▪ ensuite, on initialise les deux aires à calculer à 0 → ligne 3 (Première

▪ puis on fait une boucle en k (pour k variant de 0 à n-1 → ligne 4) dans spécialité) édition
2023-2024
laquelle on ajoute aux variables représentant les deux aires l’aire du
30,00€
rectangle Ik et celle du rectangle Sk (→lignes 5 et 6)
▪ À la fin de la boucle, on retourne les valeurs stockées dans les variables
Sources LaTeX
représentant les deux aires (→ ligne 7)
du livre de cours
et d'exercices
Il est à noter la syntaxe particulière de la fonction en Python: j’utilise ici
corrigés
l’opérateur lambda, qui me semble très pratique. Cela étant dit, on peut
(Terminale
aussi utiliser une autre syntaxe peut-être plus naturelle:
spécialité) édition
2023-2024
1. def integrale(a,b,n):
2. longueur = (b - a) / n 30,00€
3. aire_inf , aire_sup = 0 , 0
4. for k in range (n): Sources LaTeX
5. aire_inf = aire_inf + longueur * f(a du livre de cours
+ k * longueur ) et d'exercices
6. aire_sup = aire_sup + longueur * f(a
corrigés (Maths
+ (k+1) * longueur )
7. return aire_inf , aire_sup expertes) édition
8. 2023
9. def f(x): 30,00€
10. return x**2
11.
12. aire_inf , aire_sup = integrale( 0 , 1 , 100
) Articles récents
13. print("{} < integrale <
{}".format(aire_inf,aire_sup))

Dans ce dernier script, la fonction est définie à part. On enlève donc ▪ Robinets et baignoire, un
l’argument représentant la fonction f de la fonction Python integrale. problème classique de
mathématiques
Pour information, en lançant ce script, s’affiche le résultat suivant: (https://www.mathweb.fr/euclide
/2023/12/11/robinets-et-baignoire-
un-probleme-classique-de-
0.32835000000000014 < integrale < 0.33835000000000015
mathematiques/) 

▪ Mon nouvel album de musiques


Et en augmentant considérablement la valeur de n à 1000000, on arrive (https://www.mathweb.fr/euclide
(mais à quel coût !) à: /2023/11/21/mon-nouvel-album-

3 of 5 12/15/2023, 12:06 PM
Méthode des rectangles - Mathweb.fr - Implémentation en Python https://www.mathweb.fr/euclide/methode-des-rectangles/
de-musiques/)
0.3333328333334962 < integrale < 0.3333338333334962
▪ Python et POO: ajouter des
durées (https://www.mathweb.fr
1 /euclide/2023/11/19/python-et-
Sachant que la valeur exacte est 3 , cette méthode ne semble pas
poo-ajouter-des-durees/)
réellement efficace. En effet, pour n = 106 , nous n’avons qu’une valeur
approchée à 10−6 , ce qui laisse à penser que la complexité de cette ▪ Le jeu du Taquin en Python
méthode est linéaire, ce qui peut poser problème pour de très grandes (https://www.mathweb.fr/euclide
valeurs de n. D’ailleurs, lancez le script et voyez le temps que cela prend /2023/10/23/le-jeu-du-taquin-en-
pour n = 1012 … Spoiler alert: soyez très patient·e·s ! python/)

▪ Créer un titre LaTeX original


Il existe d’autres méthodes permettant d’obtenir une valeur approchée d’une
(https://www.mathweb.fr/euclide
intégrale. Je vous en présente une sur cette page (https://www.mathweb.fr
/2023/10/23/creer-un-titre-latex-
/euclide/variante-methode-rectangles-python/), tout aussi lente. Il en existe
original/)
tout de même des plus rapides comme celle utilisée par certaines
calculatrices : la méthode de Simpson (https://fr.wikipedia.org/wiki/M
%C3%A9thode_de_Simpson).
Information
Et n’oubliez pas que si vous avez des difficultés en mathématiques, je peux
vous aider par wecam (https://courspasquet.fr) ! administrative

SIRET 441 673 258 RCS


Bordeaux - Confidentialité
0 (https://www.mathweb.fr

Évaluation de l'article /euclide/confidentialite/)

 S’abonner 
 Connexion (https://www.mathweb.fr/euclide/wp-
login.php?redirect_to=https%3A%2F
%2Fwww.mathweb.fr%2Feuclide%2Fmethode-des-rectangles%2F)

Soyez le premier à commenter !

{} [+] 

 Nom* 

@ E-mail* PUBLIER LE COMMENTAIRE

4 of 5 12/15/2023, 12:06 PM
Méthode des rectangles - Mathweb.fr - Implémentation en Python https://www.mathweb.fr/euclide/methode-des-rectangles/

 Site web

0 COMMENTAIRES  

5 of 5 12/15/2023, 12:06 PM

Vous aimerez peut-être aussi