Soit (Un) une suite définie pour tout entier par Un =3n² -n + 2
1.On donne l'algorithme suivant :
| En langage Python |
|---|
def u(n) :
   return 3*n**2 -n+2
|
Que fait cette fonction?
2.On donne l'algorithme suivant:
| En langage Python |
|---|
def terme_general(n) :
   for i in range(n+1):
      u=3*i**2-i+2
      print(u)
|
Que fait l'algorithme ci-dessus ?
3.On donne l'algorithme suivant:
| En langage Python |
|---|
def u(n) :
   return 3*n**2 -n+2
def seuil(P):
   n=3
   while u(n) < P:
     n=n+1
     u(n)
   return n
print(seuil(50))
|
Que fait cet algorithme?
4.Que doit on rajouter à cet algorithme pour qu'il affiche en plus, la valeur de la suite, pour la valeur n trouvé ?
1.On donne l’algorithme suivant:
| En langage Python |
|---|
def u():
   u=2
   return 5*u + 4
|
Donner la forme récurrente de cette suite.
2.Ecrire une fonction nommée terme_ de_u,de paramètre n qui permet de calculer tous les termes de la suite juqu'au rang n.On pourra mettre n=10 pour afficher.
3.On donne l'algorithme suivant:
| En langage Python |
|---|
n,u= 0,4
while u < 1000 :
     n=n+1
     u=5*u+4
print(n,u)
|
Que fait cet algorithme ?
4. Ecrire une fonction nommée seuil qui donne la première valeur du rang n pour laquelle la valeur de la suite est supérieure à un réel P.
1.On donne l’algorithme suivant :
| En langage Python |
|---|
S=0
n=1.0
for i in range (1,12):
     u=4+1/n
     S=S+u
     n=n+1
print(S)
|
1.Quel est le rôle de cet algorithme? Pourquoi n= 1.0 ?
2.On donne l'algorithme suivant:
| En langage Python |
|---|
def S(N):
     n=1.0
     S=0
     for i in range (N):
          u=4+1/n
          S=S+u
          n=n+1
     return S
print(S(6))
|
Quelle est la différence avec le premier algorithme ?
3. Vers quelle valeur tend Un lorsque n tend vers l'infini?
4. On donne l'algorithme suivant :
| En langage Python |
|---|
def u(n):
     u=4+1/n
     return u
def seuil(P):
     n=1.0
     while abs(u(n)-4)>P :
        n=n+1
        u(n)
     return n
print(seuil(0.05))
|
Donner la signification de
while abs(u(n)-4) > P et le rôle de l'algorithme.
Les suites de Fibonacci :
De retour de voyage en Orient,
Léonard de Pise (1175 −.1250) plus connu sous le nom de Leonardo Fibonacci,ramène avec lui la notation numérique indo-arabe.
Il est également célèbre pour avoir modéliser la croissance démographique des lapins:il a émis comme hypothèse que chaque couple de lapins, dès son troisième mois d’existence, donne naissance chaque mois à un nouveau couple de lapins, et ce indéfiniment.
Le premier mois on a un couple de lapin,le deuxième mois on a toujours un couple de lapins,le troisième mois on a donc deux couples de lapins,le quatrième mois on a donc trois couples de lapins
le cinquième mois on a donc cinq couple de lapins.C'est ainsi que la suite de Fibonacci est née:
Cette suite est définie par F0 =0 F1 = 1 F2 =1 et
pour tout n>2 Fn+1 = Fn + Fn-1
Autrement dit,à partir du terme de rang 2 de la suite,le terme de rang n est obtenu en faisant la somme des termes des deux rangs précédents.
Beaucoup de phénomènes de la nature peuvent être modéliser par des suites de Fibonacci, observer un tournesol,un escargot ou encore un escalier en colimaçon et vous penserez peut être à Léonardo!
| En langage Python |
|---|
def suite_Fibonacci(n):
     a=1
     b=1
     for i in range(3,n+1):
        c=a+b
        a=b
        b=c
        print("F{} = {} ".format(i,c))
|
1.A quoi servent les lignes 6 et 7 du code ?
2.Que fait ce programme ?
3.
SUITE DE FIBONACCI ET NOMBRE D'OR
Le nombre d'or noté φ est égale à (1+√5)/2 .
On donne l'algorithme suivant :
| En langage Python |
|---|
def suite_Fibonacci(n):
     a=1.0
     b=1.0
     for i in range(3,n+1):
       c=a+b
       a=b
       b=c
     return c
def rapport_Fibonacci(n):
     r=suite_Fibonacci(n)/suite_Fibonacci(n-1)
     return r
|
Que fait cet algorithme ?
Donner un arrondi à 6 décimales près du nombre d'or.De quoi s'aperçoit on si on demande rapport_Fibonacci(n) avec n grand ?
4.
LA SPIRALE DE FIBONACCI
On construit un carré central de côté 1
A partir de ce carré on en construit un autre de coté 1 qui s'appuie sur le précédent.
On répète la construction, chaque nouveau carré de côté ( 2, puis,3,puis 5, valeur de la suite Fibonacci) appuie son côté sur l'ensemble des carrés déjà construits.
Dans chaque carré, on trace un quart de cercle joignant un sommet au sommet opposé pour que les les quarts de cercle soient consécutifs.
La courbe obtenue s'appelle la spirale de Fibonacci. Cf ci dessous

On donne l'algorithme suivant :
| En langage Python |
|---|
from turtle import *
up()
goto(60,80)
down()
left(90)
def spirale_Fibonacci(n):
     L1=[1,2,3,5,8,13]
     L2=["black","red","green","orange","black","yellow"]
     for i in range(n+1):
         pencolor(L2[i])
         circle(10*L1[i],90)
print( spirale_Fibonacci (5))
|
4. Que devrait -on obtenir si on écrit ce programme?