Étape 1
Analyse du fonctionnement du script : la fonction generer_liste(n) initialise une liste vide L, puis effectue une boucle pour $k$ allant de $1$ à $n$. À chaque étape $k$, le nombre $3k - 1$ est ajouté à la fin de la liste.
Étape 2
Effectuons le traçage pas à pas de l'exécution du script en calculant pour chaque étape $k$ la valeur ajoutée et la somme cumulée des éléments de la liste $L$ :
Étape 3
Pour $k = 1$ : le terme ajouté vaut $3 \times 1 - 1 = 2$. La liste est $L = [2]$ et la somme des éléments vaut $2$.
Étape 4
Pour $k = 2$ : le terme ajouté vaut $3 \times 2 - 1 = 5$. La liste est $L = [2, 5]$ et la somme vaut $2 + 5 = 7$.
Étape 5
Pour $k = 3$ : le terme ajouté vaut $3 \times 3 - 1 = 8$. La liste est $L = [2, 5, 8]$ et la somme vaut $7 + 8 = 15$.
Étape 6
Pour $k = 4$ : le terme ajouté vaut $3 \times 4 - 1 = 11$. La liste est $L = [2, 5, 8, 11]$ et la somme vaut $15 + 11 = 26$.
Étape 7
Pour $k = 5$ : le terme ajouté vaut $3 \times 5 - 1 = 14$. La liste est $L = [2, 5, 8, 11, 14]$ et la somme vaut $26 + 14 = 40$.
Étape 8
Pour $k = 6$ : le terme ajouté vaut $3 \times 6 - 1 = 17$. La liste est $L = [2, 5, 8, 11, 14, 17]$ et la somme vaut $40 + 17 = 57$.
Étape 9
Pour $k = 7$ : le terme ajouté vaut $3 \times 7 - 1 = 20$. La liste est $L = [2, 5, 8, 11, 14, 17, 20]$ et la somme vaut $57 + 20 = 77$.
Étape 10
Pour $k = 8$ : le terme ajouté vaut $3 \times 8 - 1 = 23$. La liste est $L = [2, 5, 8, 11, 14, 17, 20, 23]$ et la somme vaut $77 + 23 = 100$.
Étape 11
Tous les termes ajoutés étant strictement positifs, la somme cumulée augmente strictement à chaque itération. La valeur de $n$ permettant d'obtenir une somme égale à $100$ est donc unique et vaut $8$.
Méthode clé
Effectuer un traçage pas à pas en calculant à chaque itération la valeur ajoutée à la liste ainsi que la somme cumulée des éléments.
Piège à éviter
Confondre la valeur du terme ajouté $3k-1$ avec la somme cumulée des éléments de la liste.