Affichage d'une suite¶
La fonction suivante, affiche la liste des 10 premiers termes d'une suite $$u_{n+1}=3u_n+2$$ $$u_0=3$$
u=3
liste=[u]
for n in range(9):
u=3*u+2
liste.append(u)
print(liste)
A vous de jouer¶
Ecrire la liste des 20 premiers termes de la suite $$v_{n+1}=2v_n-5$$ $$v_0=2$$
# Votre code
Somme de suite¶
On souhaite calculer la somme $S=u_1+u_2+u_3+...u_n$ avec la suite $u_n$ définie plus haut.
def somme(n) :
u=3
s=u
for n in range(n):
u=3*u+2
s=s+u
return s
print(somme(10))
A vous de jouer¶
Recopier le programme en reprenant la suite $v_n$ et en calculant la somme des 15 premiers terme.
# Votre code
Seuil d'une suite - Forme Explicite¶
On considère la suite $$u_n=\frac{n^2+3n+5}{n^2+1}$$
On cherche le premier entier $n_0$ à partir duquel $u_n\leq 1.1$
from math import *
# On définit la suite u pour n donné
def u(n) :
return (n**2+3*n+5)/(n**2+1)
n=0
while u(n)>1.1:
n=n+1 # Tant que u(n) est supérieur au seuil on calcule le terme suivant
print("Le premier entier n tel que u(n)<=1.1 est ",n)
Seuil d'une suite - Forme Récurrence¶
On considère la suite $$v_{n+1}=\frac{1}{2}(v_n+\frac{5}{v_n})$$ $$v_0=7$$ On cherche le premier entier $n_0$ à partir duquel $u_n\leq 2.24$
# On définit v_0
n=0
v=7
while v>2.24 :# Tant que v(n) est supérieur au seuil on calcule le terme suivant
n=n+1
v=0.5*(v+5/v)
print(" Le premier entier n tel que v(n)<=2.24 est ",n)
A vous de jouer¶
Au 1er janvier 2018, une association comptait 2500 adhérents. Une étude a permis de modéliser l'évolution du nombre d'adhérent. Chaque mois :
- 4% des adhérents de l'association ne renouvellent pas leur adhésion.
- 80 nouvelles personnes adhèrent à l'association.
On note $u_n$ l'estimation du nombre d'adhérents n mois après le 1er janvier 2018.
On a :
$$u_0=2500$$ et $$u_{n+1}=0.96u_n+80$$
A partir de quel mois, le nombre d'adhérents sera-t-il inférieur à 2300
# votre code
Dichotomie¶
Soit la fonction $$f(x)=x^2 -2$$
On cherche un evaleur approchée à $10^{-3}$ de la solution $\alpha$ de l'équation $f(x)=0$
def f(x) :
return(x**2-2)
def dichotomie(a,b,epsilon) :
ecart = 1
while ecart>epsilon :
m=(a+b)/2
ecart =abs(b-a)
if f(m)==0:
return m
elif f(a)*f(m)>0 :
a=m
else :
b=m
return a,b
print(dichotomie(0,2,0.001))