Algorithmes de calcul de seuil et programmation Python des suites récurrentes

Terminale générale Spé · Option Mathématiques Complémentaires

À retenir

• **Terme de rang N** : boucle bornée `for k in range(N):` qui répète exactement N fois `u = a * u + b`. • **Seuil** : boucle `while` dont la condition est la négation de l'objectif (`while u < S:` pour atteindre u_n S), avec un compteur `n = n + 1` à chaque passage. • **Terminaison** : comparer le seuil S à la limite avant d'écrire la boucle ; la fonction renvoie `n` (instruction `return` dans une fonction `def`).

Le cours

1. Calculer un terme : boucle bornée Pour obtenir u_N quand u_0 = 3 et u_n+1 = 0,9u_n + 2, on répète exactement N fois la mise à jour de la variable u : la boucle for convient, car le nombre de passages est connu. def terme(N): u = 3 for k in range(N): u = 0.9 * u + 2 return u 2. Chercher un seuil : boucle non bornée Pour trouver le premier rang n tel que u_n S, on ne sait pas d'avance combien de calculs seront nécessaires : on utilise while, avec une condition qui est la négation de l'objectif, et un compteur n augmenté à chaque passage. def rang_seuil(S): n = 0 u = 3 while u < S: u = 0.9 * u + 2 n = n + 1 return n Ici = 20 : rang_seuil(19) renvoie le premier rang où u_n 19. À chaque passage, u et n avancent ensemble, ce qui garantit que n est bien l'indice du terme contenu dans u. 3. Terminaison Avant de lancer une boucle while, vérifier que le seuil sera atteint : la suite ci-dessus croît vers 20, donc rang_seuil(25) ne s'arrêterait jamais. On peut aussi contrôler le résultat par le calcul avec le logarithme ou par un tableau de valeurs.

Dans ce chapitre