Sujet n°39
Sujet original
Pour télécharger l'énoncé original, cliquer ici.
Exercice n°1☘
On s’intéresse à la suite d’entiers définie par :
- les deux premiers termes sont égaux à 1,
- ensuite, chaque terme est obtenu en faisant la somme des deux termes qui le précèdent.
En mathématiques, on le formule ainsi :
u_1 = 1, u_2 = 1 et, pour tout entier naturel non nul n,
u_{n+2} = u_{n+1} + u_n.
Cette suite est connue sous le nom de suite de Fibonacci.
Écrire en Python une fonction fibonacci
qui prend en paramètre un entier n
supposé
strictement positif et qui renvoie le terme d’indice n
de cette suite.
Exemples
>>> fibonacci(1)
1
>>> fibonacci(2)
1
>>> fibonacci(25)
75025
>>> fibonacci(45)
1134903170
Une solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|
Exercice n°2☘
On considère la fonction pantheon
prenant en paramètres eleves
et notes
deux tableaux de même longueur, le premier contenant le nom des élèves et le
second, des entiers positifs désignant leur note à un contrôle de sorte que
eleves[i]
a obtenu la note notes[i]
.
Cette fonction renvoie le couple constitué de la note maximale attribuée et des noms des élèves ayant obtenu cette note regroupés dans un tableau.
Ainsi, l’instruction pantheon(['a', 'b', 'c', 'd'], [15,18,12,18])
renvoie
le couple (18, ['b', 'd'])
.
1 2 3 4 5 6 7 8 9 10 |
|
Compléter ce code.
Commentaires sur le code original
-
Pour télécharger l'original du fichier à compléter, cliquer ici.
-
À nouveau, le mot « liste » est à comprendre dans le sens « liste Python » (c'est-à-dire tableau) plutôt que dans le sens du type abstrait de données liste étudié en Terminale.
Exemples
>>> eleves_nsi = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
>>> notes_nsi = [30, 40, 80, 60, 58, 80, 75, 80, 60, 24]
>>> pantheon(eleves_nsi, notes_nsi)
(80, ['c', 'f', 'h'])
>>> pantheon([],[])
(0, [])
Une solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|