Entraînement d'algo. BTS1 9 avril 2014
• Travail sur papier. ( 30 minutes )
Lire le programme suivant en Python 2.7.
Puis répondre aux questions.
from random import*
from decimal import*
def Test(L):
Q=[]
for i in range(0,N-1):
Q.append(round((L[i+1]/L[i]),2))
return Q
####### PROGRAMME PRINCIPAL###
########################
L=input("Entrer une liste: L= ")
N=len(L)
print "La liste Q est :" , Test(L)
QUESTIONS:
1. Le fait de mettre
L=input("Entrer une liste: L= ")
au même alignement que def
présente quel intérêt ?
2. A quoi sert le round( .... , 2 ) ?
round((L[i+1]/L[i]),2))
3. Que signifie N=len(L) ?
4. Que signifie Q=[] ?
5. Que peut-on dire de l'entier i quand on a:
for i in range (N-1): ?
6. Que donne 6./7. ?
7. Qu'obtient-on avec ce programme ?
Tester le programme pour L=[2,4,8,16].
8. Modifier le programme de façon à obtenir également la liste
des différences successives de deux termes consécutifs de L.
9.Soit L la liste des premiers termes d'une suite.
Quel serait l'intérêt d'un tel programme?
-------------------------------------------------------------------------------------------------
• Travail sur ordinateur. ( 30 minutes )
1. Ecrire un programme en Python 2.7 , qui , quand l'utilisateur entre
l'entier naturel n, donne le terme d'indice n de la suite ( un ) telle que :
u0 = 1
u1 = 1
un + 2 = un + un + 1 pour tout n dans IN
2. Modifier le programme poour avoir la liste L des cinq premiers termes
de la suite ( un ).
3. Modifier cet algorithme à l'aide du premier travail, pour pouvoir dire si la suite
semble particulière.
------------------------------------------------------------------------------