Calcul d'un terme avec une formule explicite
Soit
(u_n)
la suite numérique définie pour tout
n\in \mathbb{N}
par
u_n=(n-4)/(2n+1)
. Cette suite est définie à l'aide d'une formule explicite : on a directement
u_n
en fonction de
n
.
Nous allons donc programmer une fonctionterme_uqui prendra en argument un entiernet qui renverra le n-ième terme de cette suite. Exécuter le programme suivant.
def terme_u(n):
return (n-4)/(2*n+1)
Dans ce fragment de programme,
- le mot clédefpermet d'indiquer que l'on est en train de définir une fonction ;
- cette fonction a pour nom terme_uet un seul argument que l'on appellen. Le nom de la suite est suivie de deux points ;
- la suite de la fonction est décalée d'un cran vers la droite : c'est ce que l'on appelle l'indentation. Celle-ci est indispensable au bon fonctionnement du programme ;
- le mot-cléreturnindique que la fonction renverra la valeur qui suit ce mot. Cette valeur pourra alors être stockée dans une variable ou affichée dans la console.
Pour calculer
u_20
, on appelle la fonctionterme_uavec l'argument 20.
terme_u(20)
Exercice
1.Écrire une fonctionterme_vprenant un entiernen paramètre et renvoyant le n-ième terme de la suite définie pour tout
n\in\mathbb{N}
par
.
En Python : la puissance s'écrit **. Par exemple
s'écrit (-1)**n.
2. Utiliser cette fonction pour calculer le
.
3.En utilisant cette fonction, conjecturer la limite de
lorsque
tend vers
.
Calcul à l'aide d'une formule de récurrence
Soit
la suite numérique définie par
et pour tout
par
. Cette suite est définie par récurrence. Pour obtenir le termede rang10, il faut calculer le termede rang9, qui n'est calculable qu'en ayant le termede rang8, et ainsi de suite.
Pour ce faire, nous utilisons une boucle bornée (aussi appelée bouclefor). La fonction suivante renvoie le terme de rang
n
pour un entier
passé en argument. Exécuter ce programme.
def terme_w(n):
w = 5
for i in range(n):
w = w/3 + 6
return w
Explications du programme
- La variablewcontient les valeurs successives des termes de la suite.
- On l'initialise ligne 2 en lui donnant la valeur 5.
- La boucle for de la ligne 3 crée n répétitions de l'instruction de la ligne 4. On remarquer que la ligne 4 est encore indentée d'un cran pour bien signifier qu'elle fait partie de la boucle for.
- Ligne 4 : la valeur du terme suivant de la liste est calculée à l'aide de la formule de récurrence et de la valeur précédente. Ce qui est à gauche du signe = désigne la nouvelle valeur, ce qui est à droite désigne l'ancienne. Cette nouvelle valeur est à nouveau enregistrée dans la variable w.
- La dernière valeur calculée est renvoyée ligne 5. Attention à l'indentation (alignement) : le return doit être en dehors de la boucle, et donc au même niveau que le for.
Pour calculer
, on appelle la fonction terme_w avec l'argument 10.
terme_w(10)
Exercice
1.Écrire ci-dessous une fonction terme_t prenant un entiernen paramètre et renvoyant le terme de rangnde la suite définie par
et pour tout
par
.
2.Utiliser la fonction ainsi construite pour calculer
t_10
.
3.Conjecturer la limite de cette suite.