Adloun

Calculer avec des rectangles

Exercice de TD · niveau 3 (difficile) · mathématiques complémentaires (terminale), chapitre 7 — Intégration

Énoncé

Calculer avec des rectangles.

Le chapitre 3 a défini le logarithme népérien. On peut aussi le fabriquer par une aire : on admet que

Corrigé

Donc .


from math import log

def rectangles(f, a, b, n, cote):
    h = (b - a) / n
    s = 0
    for k in range(n):
        x = a + k * h if cote == "gauche" else a + (k + 1) * h
        s = s + f(x)
    return h * s

g = lambda x: 1 / x
for n in [4, 10, 100, 1000]:
    haut = rectangles(g, 1, 2, n, "gauche")   # g decroissante : gauche = au-dessus
    bas = rectangles(g, 1, 2, n, "droite")
    print(n, round(bas, 6), round(haut, 6))
print("ln 2 =", round(log(2), 6))

```text

4 0.634524 0.759524 10 0.668771 0.718771 100 0.690653 0.695653 1000 0.692897 0.693397 ln 2 = 0.693147 ```

soit six décimales justes au lieu de deux, sans un seul calcul supplémentaire de .

L'écart entre les deux sommes vaut ici exactement : on lit directement combien de tranches il faut pour une précision donnée.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.