Aller au contenu

Chapitre 02 Suites numériques Série 6 sur 7

Seuils et algorithmes en Python — Terminale Spé

10 exercices corrigés de suites numériques en Terminale spécialité, avec énoncé et correction détaillée. Exercices 51 à 60 de la banque du chapitre.

Conforme au programme officiel 2026-2027 · notre méthode de vérification

Les 10 exercices corrigés de la série

Dans toute cette série, l’usage de la calculatrice est autorisé.

10 exercices disponibles0 réussis · 0 à revoir
Choisir une notion à travaillerChaque exercice est rattaché aux notions du programme qu’il fait travailler.

Exercice 51 — Calculer un terme avec une boucle

Non commencéFacile
On considère la suite (un)(u_n) définie par u0=2u_0=2 et, pour tout entier naturel nn, un+1=3un−1u_{n+1}=3u_n-1.

1. Calculer u1u_1, u2u_2 et u3u_3.
2. On considère la fonction Python suivante.
def suite(n):
    u = 2
    for i in range(n):
        u = 3*u - 1
    return u
a. Combien de fois l'instruction u = 3*u - 1\texttt{u = 3*u - 1} est-elle exécutée lors de l'appel suite(4)\texttt{suite(4)} ?

b. Quelle valeur renvoie suite(4)\texttt{suite(4)} ? Que représente-t-elle ?

3. On considère la suite (wn)(w_n) définie par w0=0w_0=0 et, pour tout entier naturel nn, wn+1=2wn+nw_{n+1}=2w_n+n.

a. Calculer w1w_1, w2w_2, w3w_3.

b. Écrire une fonction Python terme_w(n)\texttt{terme\_w(n)} qui renvoie wnw_n.

Exercice 52 — Liste des premiers termes

Non commencéFacile
On considère la suite (un)(u_n) définie par u0=1u_0=1 et, pour tout entier naturel nn, un+1=0,5 un+3u_{n+1}=0{,}5\,u_n+3, ainsi que la fonction Python :
def liste(n):
    L = [1]
    u = 1
    for i in range(n):
        u = 0.5*u + 3
        L.append(u)
    return L
1. Combien d'éléments contient la liste renvoyée par liste(n)\texttt{liste(n)} ? Quels termes de la suite contient-elle ?
2. Donner la liste renvoyée par liste(4)\texttt{liste(4)}.
3. Quelle conjecture peut-on faire sur le sens de variation et sur la limite de la suite (un)(u_n) ?
4. On pose, pour tout entier naturel nn, vn=un−6v_n=u_n-6.

a. Démontrer que la suite (vn)(v_n) est géométrique ; préciser sa raison et son premier terme.

b. En déduire l'expression de unu_n en fonction de nn, puis la limite de la suite (un)(u_n).

Exercice 53 — Sommes et accumulateur

Non commencéIntermédiaire
1. On considère la fonction suivante.
def somme(n):
    s = 0
    for k in range(n+1):
        s = s + 2*k + 1
    return s
a. Écrire, à l'aide du symbole ∑\sum, la somme calculée par somme(n)\texttt{somme(n)}.

b. Déterminer, sans ordinateur, la valeur renvoyée par somme(9)\texttt{somme(9)}.

c. Démontrer que, pour tout entier naturel nn, cette somme est égale à (n+1)2(n+1)^2.

2. On note, pour tout entier naturel nn, Sn=1+2+22+⋯+2nS_n=1+2+2^2+\cdots+2^n.

a. Écrire une fonction Python somme_geo(n)\texttt{somme\_geo(n)} qui renvoie SnS_n, en utilisant une variable u\texttt{u} qui contient successivement les puissances de 22 et une variable s\texttt{s} qui accumule la somme. On n'utilisera pas l'opérateur **\texttt{**}.

b. Exprimer SnS_n en fonction de nn et en déduire la valeur renvoyée par somme_geo(9)\texttt{somme\_geo(9)}.

Exercice 54 — Premiers algorithmes de seuil

Non commencéIntermédiaire
1. Une population de bactéries compte 100100 individus au départ et augmente de 5 %5\,\% par heure. On note unu_n le nombre de bactéries au bout de nn heures, de sorte que u0=100u_0=100 et un+1=1,05 unu_{n+1}=1{,}05\,u_n.
def seuil_pop():
    u = 100
    n = 0
    while u <= 200:
        u = 1.05*u
        n = n + 1
    return n
a. Que représente la valeur renvoyée par cette fonction pour la situation étudiée ?

b. Exprimer unu_n en fonction de nn. Déterminer par le calcul le plus petit entier nn tel que un>200u_n>200, et en déduire la valeur renvoyée par seuil_pop()\texttt{seuil\_pop()}.

2. On considère la suite définie par vn=0,8nv_n=0{,}8^n pour tout entier naturel nn.

a. Justifier que la suite (vn)(v_n) converge vers 00.

b. Écrire une fonction Python seuil_v()\texttt{seuil\_v()} qui renvoie le plus petit entier nn tel que vn<10−3v_n<10^{-3}.

c. Déterminer cet entier par le calcul.

Exercice 55 — Un programme à compléter

Non commencéIntermédiaire
On considère la suite (un)(u_n) définie par u0=5u_0=5 et, pour tout entier naturel nn, un+1=0,9 un+1u_{n+1}=0{,}9\,u_n+1. On admet que, pour tout entier naturel nn, un=10−5×0,9nu_n=10-5\times0{,}9^n.

1. Déterminer la limite de la suite (un)(u_n) et justifier que (un)(u_n) est croissante.
2. On souhaite déterminer le plus petit entier nn tel que un>9,9u_n>9{,}9. Recopier et compléter la fonction suivante.
def seuil():
    u = ......
    n = 0
    while ............ :
        u = ............
        n = ............
    return n
3. Résoudre l'inéquation un>9,9u_n>9{,}9 d'inconnue n∈Nn\in\mathbb{N} et en déduire la valeur renvoyée par la fonction.
4. Pourquoi est-on certain, avant même d'exécuter le programme, que la boucle while\texttt{while} s'arrête ?

Exercice 56 — Faire tourner un programme à la main

Non commencéIntermédiaire
On considère la fonction suivante, où A\texttt{A} est un nombre réel.
def mystere(A):
    u = 1
    n = 0
    while u <= A:
        u = 2*u + 1
        n = n + 1
    return n
1. Faire fonctionner la fonction pour A = 20\texttt{A = 20} en recopiant et en complétant le tableau d'état des variables ci-dessous (une colonne par passage dans la boucle), puis donner la valeur renvoyée.

Valeur de u\texttt{u}11
Valeur de n\texttt{n}00
Condition u <= A\texttt{u <= A}vraie


2. On note (un)(u_n) la suite définie par u0=1u_0=1 et un+1=2un+1u_{n+1}=2u_n+1. Expliquer ce que renvoie mystere(A)\texttt{mystere(A)} en fonction de la suite (un)(u_n).
3. Démontrer par récurrence que, pour tout entier naturel nn, un=2n+1−1u_n=2^{n+1}-1.
4. Sans exécuter le programme, en déduire la valeur renvoyée par l'appel mystere(1000)\texttt{mystere(1000)}, puis celle renvoyée par mystere(10**6)\texttt{mystere(10**6)}.

Exercice 57 — Trouver l'erreur

Non commencéIntermédiaire
On souhaite déterminer le plus petit entier naturel nn tel que (13)n<0,01\left(\dfrac{1}{3}\right)^n<0{,}01. Quatre élèves proposent les fonctions suivantes.

Programme A
def seuil_a():
    u = 1
    n = 0
    while u < 0.01:
        u = u/3
        n = n + 1
    return n
Programme B
def seuil_b():
    u = 1
    n = 0
    while u >= 0.01:
        u = u/3
    return n
Programme C
def seuil_c():
    u = 1
    n = 0
    while u >= 0.01:
        u = u/3
    n = n + 1
    return n
Programme D
def seuil_d():
    u = 1
    n = 0
    while u >= 0.01:
        n = n + 1
        u = u/3
    return n
1. Déterminer par le calcul le plus petit entier naturel nn tel que (13)n<0,01\left(\dfrac{1}{3}\right)^n<0{,}01.
2. Pour chacun des quatre programmes, indiquer la valeur renvoyée, dire s'il est correct et, s'il ne l'est pas, expliquer l'erreur commise et la corriger.

Exercice 58 — Placement et fonction seuil paramétrée

Non commencéDifficile
Le 1ᵉʳ janvier 2026, Inès place 1 0001\,000 euros sur un compte rémunéré à 3 %3\,\% par an (intérêts composés). Chaque année, après le versement des intérêts, elle ajoute 100100 euros. On note cnc_n le capital, en euros, au bout de nn années, de sorte que c0=1000c_0=1000 et, pour tout entier naturel nn, cn+1=1,03 cn+100c_{n+1}=1{,}03\,c_n+100.

1. On pose, pour tout entier naturel nn, dn=cn+100003d_n=c_n+\dfrac{10000}{3}. Démontrer que (dn)(d_n) est géométrique, puis que, pour tout entier naturel nn,

cn=130003×1,03n−100003.c_n=\frac{13000}{3}\times1{,}03^n-\frac{10000}{3}.

2. Déterminer la limite de la suite (cn)(c_n).
3. On considère la fonction suivante.
def seuil(A):
    c = 1000
    n = 0
    while c <= A:
        c = 1.03*c + 100
        n = n + 1
    return n
a. Expliquer pourquoi, quel que soit le réel A\texttt{A}, l'appel seuil(A)\texttt{seuil(A)} se termine.

b. Que renvoient seuil(900)\texttt{seuil(900)} et seuil(1000)\texttt{seuil(1000)} ?

c. Déterminer par le calcul les valeurs renvoyées par seuil(5000)\texttt{seuil(5000)} et seuil(10000)\texttt{seuil(10000)}. Interpréter la seconde dans le contexte.

Exercice 59 — Approcher 2\sqrt{2} avec une précision donnée

Non commencéDifficile
On considère la suite (un)(u_n) définie par u0=2u_0=2 et, pour tout entier naturel nn,

un+1=12(un+2un).u_{n+1}=\frac{1}{2}\left(u_n+\frac{2}{u_n}\right).

On admet que tous les termes de la suite sont bien définis et strictement positifs.

1. Calculer u1u_1, u2u_2 et u3u_3 sous forme de fractions irréductibles.
2. Démontrer que, pour tout entier naturel nn,

un+1−2=(un−2)22un.u_{n+1}-\sqrt{2}=\frac{\left(u_n-\sqrt{2}\right)^2}{2u_n}.

En déduire que un⩾2u_n\geqslant\sqrt{2} pour tout entier naturel nn.

3. a. Démontrer que, pour tout entier naturel nn, un+1−2⩽12(un−2)u_{n+1}-\sqrt{2}\leqslant\dfrac{1}{2}\left(u_n-\sqrt{2}\right).

b. En déduire que, pour tout entier naturel nn, 0⩽un−2⩽2−22n0\leqslant u_n-\sqrt{2}\leqslant\dfrac{2-\sqrt{2}}{2^n}, puis la limite de la suite (un)(u_n).

4. Justifier que, pour tout entier naturel nn, 2un⩽2⩽un\dfrac{2}{u_n}\leqslant\sqrt{2}\leqslant u_n.
5. On considère la fonction suivante, où eps\texttt{eps} est un réel strictement positif.
def heron(eps):
    u = 2
    n = 0
    while u - 2/u >= eps:
        u = (u + 2/u)/2
        n = n + 1
    return n, u
a. Expliquer pourquoi le nombre u\texttt{u} renvoyé est une valeur approchée de 2\sqrt{2} à eps\texttt{eps} près.

b. Déterminer la valeur de n\texttt{n} renvoyée par heron(10**-6)\texttt{heron(10**-6)}.

c. À l'aide de la majoration de la question 3.(b), déterminer un rang nn à partir duquel on est assuré que un−2<10−6u_n-\sqrt{2}<10^{-6}. Comparer avec le résultat précédent et commenter.

Exercice 60 — Concentration d'un médicament

Non commencéDifficile
Un patient reçoit un traitement par perfusion. On modélise la quantité de médicament présente dans son sang, en milligrammes, heure après heure. À l'instant initial, cette quantité vaut 22 mg. Chaque heure, l'organisme élimine 30 %30\,\% du médicament présent, et la perfusion en apporte 0,90{,}9 mg. On note qnq_n la quantité de médicament, en mg, au bout de nn heures ; ainsi q0=2q_0=2 et, pour tout entier naturel nn,

qn+1=0,7 qn+0,9.q_{n+1}=0{,}7\,q_n+0{,}9.

Partie A — Étude mathématique

1. Calculer q1q_1 et q2q_2.
2. Démontrer par récurrence que, pour tout entier naturel nn, 2⩽qn⩽qn+1⩽32\leqslant q_n\leqslant q_{n+1}\leqslant3.
3. En déduire que la suite (qn)(q_n) converge.
4. On pose, pour tout entier naturel nn, vn=qn−3v_n=q_n-3.

a. Démontrer que (vn)(v_n) est une suite géométrique et exprimer qnq_n en fonction de nn.

b. Déterminer la limite de (qn)(q_n) et l'interpréter.

Partie B — Algorithme

On considère la fonction suivante, où p\texttt{p} est un réel strictement positif.
def seuil(p):
    q = 2
    n = 0
    while q < 3 - p:
        q = 0.7*q + 0.9
        n = n + 1
    return n
1. Expliquer ce que renvoie seuil(p)\texttt{seuil(p)} dans le contexte de l'exercice.
2. Que renvoie seuil(1)\texttt{seuil(1)} ? Justifier.
3. Déterminer par le calcul la valeur renvoyée par seuil(0.01)\texttt{seuil(0.01)}.

Partie C — Changement de dose

Le médecin envisage d'augmenter l'apport horaire à 1,51{,}5 mg. La quantité de médicament vérifie alors r0=2r_0=2 et rn+1=0,7 rn+1,5r_{n+1}=0{,}7\,r_n+1{,}5. Au-delà de 44 mg, le médicament présente un risque de toxicité.

1. Démontrer que, pour tout entier naturel nn, rn=5−3×0,7nr_n=5-3\times0{,}7^n.
2. Modifier la fonction de la partie B en une fonction alerte()\texttt{alerte()} qui renvoie le nombre d'heures au bout duquel la quantité de médicament dépasse strictement 44 mg.
3. Déterminer par le calcul la valeur renvoyée par alerte()\texttt{alerte()}. Que peut-on conseiller au médecin ?

Les 7 séries du chapitre

70 exercices corrigés au total, en progression du plus simple au plus complet.

  1. 1 Raisonnement par récurrence Exercices 1 à 10
  2. 2 Suites arithmétiques, géométriques et sommes Exercices 11 à 20
  3. 3 Limites : règles opératoires et formes indéterminées Exercices 21 à 30
  4. 4 Comparaison, encadrement et divergence Exercices 31 à 40
  5. 5 Suites définies par une relation de récurrence Exercices 41 à 50
  6. 6 Seuils et algorithmes en Python Exercices 51 à 60 · page courante
  7. 7 Approfondissement Exercices 61 à 70