Dans notre imaginaire, tendre vers +\infty, c'est aller toujours plus haut en dépassant n'importe quel hauteur donnée à l'avance.
Si on se fixe un seuil très loin au dessus de nos têtes, ce n'est qu'une question de temps avant que notre petite fusée ne le dépasse.
C'est ce que fait un algorithme de seuil avec une suite u_n qui tend vers +\infty :
il part de la première valeur de la suite (le plancher des vaches)
il calcule les valeurs suivantes les unes après les autres tant que le seuil n'est pas dépassé
il affiche le nombre d'étapes qu'il a compté avant de s'arrêter
Cette méthode, quand on la décrit un peu plus précisément donne l'algorithme suivant où chaque variable a un rôle précis :
La variable
n
aura pour valeur un entier démarrant à zéro qui compte chaque étape en étant incrémenté.
La variable
u
contiendra la valeur de la suite u_n (à l'étape n).
La variable
s
représente le seuil. Elle aura une valeur élevée décidée par l'utilisateur.
n prend la valeur 0u prend la valeur initiale u0 de la suiteTant que u < S alors
n prend la valeur de n+1u prend la valeur suivante un+1
Fin Tant que
Afficher n
On peut appliquer cette méthode à la main, et calculer pendant très longtemps (surtout si le seuil est très grand)...
...ou décider de donner l'algorithme suivant à notre calculatrice programmable :
On prend l'exemple de la suite géométrique ci-dessous :
\left\{
\begin{array}{ccc}
u_{n+1}&=&2 u_n \\
u_0&=&1
\end{array}
\right.
Elle tend vers +\infty. On peut donc exécuter le programme suivant pour savoir à partir de quel indice
N
elle dépassera la valeur 10000 :
Modifier l'algorithme précédent pour déterminer pour quels premiers indices N les suites (u_n) dépassent les seuils s :
\left \{
\begin{array}{r c l}
u_{n+1} & = & 3 u_n - 1 \\
u_{0} & = & 2 \\
\end{array}
\right .
et s=10^5u_n=3^n + 2 et s=10000\left \{
\begin{array}{r c l}
u_{n+1} & = & u_n + n - 5 \\
u_{0} & = & 0 \\
\end{array}
\right .
et s=1000
Suite qui tend vers -\infty
Tendre vers moins l'infini peut être visualisé comme une chute sans fin. Jusqu'ici tout va bien...
Le problème du seuil revient à donner une profondeur et à chercher à quel moment on la dépasse. L'algorithme est le même, mais la condition doit être inversée car il continue Tant que la valeur est au dessus du seuil :
n prend la valeur 0
u prend la valeur initiale u0 de la suite
Tant que u > S alors
n prend la valeur de n+1
u prend la valeur suivante un+1
Fin Tant que
Afficher n
Prenons l'exemple de la suite géométrique ci-dessous :
\left\{
\begin{array}{ccc}
u_{n+1}&=&3 u_n \\
u_0&=&-1
\end{array}
\right.
Elle tend vers -\infty. On peut donc exécuter le programme suivant pour savoir à partir de quel indice
N
elle dépassera la valeur -10000 :
Modifier l'algorithme précédent pour déterminer pour quels premiers indices N les suites (u_n) dépassent les seuils s :
\left \{
\begin{array}{r c l}
u_{n+1} & = & 3 u_n - 1 \\
u_{0} & = & 2 \\
\end{array}
\right .
et s=10^5u_n=3^n + 2 et s=10000\left \{
\begin{array}{r c l}
u_{n+1} & = & u_n + n - 5 \\
u_{0} & = & 0 \\
\end{array}
\right .
et s=1000
Les valeurs de la suite se rapprochent de plus en plus de la limite finie, à l'image de cet avion qui va aterrir. Le sol correspondrait ici à une limite valant zéro. Par contre là où l'avion finit par toucher le sol, la suite n'atteint pas forcément sa limite...
...mais elle s'en approche tellement que tout petit intervalle autour de la limite laissera entrer tous les termes de la suite à partir d'un certain rang !
La question est : "à partir de quel rang ?". Là encore on peut utiliser l'agorithme de seuil avec :
La variable
l
représente la limite finiede la suite.
La variable
s
représente le seuil : une petite valeur qui représente l'écart entre la suite et la limite que l'on souhaite franchir.
Entier n
Flottant u, l, s
Tant que |u-l| > s alors
N prend la valeur de N+1
U prend la valeur suivante un+1
Fin si
Afficher N
|u-l|
est la distance entre un terme
u
de la suite et sa limite
l
. La valeur absolue sert à rendre la différence positive pour représenter une longueur.
L'algorithme calculera chaque terme de la suite
tant que
l'écart est plus grand que le seuil.
On prend l'exemple de la suite définie par u_n = 1+0,9^n. On observe sur le graphique ci-dessous le comportement asymptotique et l'intervalle autour de la limite en bleu.
On peut exécuter le programme suivant pour vérifier ce que l'on peu lire sur le graphique : à partir de quel indice l'écart entre un terme de la suite u_n et sa limite 1 sera inférieur à 10^{-2} :
Modifier l'algorithme précédent (et vérifiez avec le graphique quand c'est possible) pour déterminer à partir de quels indices N l'écart entre u_N et sa limite est inférieur à :
s=0.1s=10^{-3}s=10^{-5}
Incrémenter une variable signifie augmenter sa valeur de 1. Les variables "compteur" sont incrémentées à chaque étape importante d'un algorithme↩
Une droite est asymptote à une courbe lorsque la distance entre les deux tend vers zéro. Une asymptote horizontale correspond au cas d'une limite finie quand n tend vers +\infty↩
Incrémenter une variable signifie augmenter sa valeur de 1. Les variables "compteur" sont incrémentées à chaque étape importante d'un algorithme
Une droite est asymptote à une courbe lorsque la distance entre les deux tend vers zéro. Une asymptote horizontale correspond au cas d'une limite finie quand n tend vers +\infty