📝 Évaluation Algorithmique & Python (Seconde) avec corrigé
Un contrôle noté sur 20, avec barème, exercices gradués conformes au programme officiel et corrigé en page 2. Imprime-le ou enregistre-le en PDF — et génère un nouveau sujet à volonté.
👩🏫 Pour la classe
Sujets A et B ci-dessous : exercices différents, même notion et même barème — un sujet par rangée pour limiter la copie.
Pas envie d'imprimer ? Fais ces exercices en ligne
Correction instantanée, difficulté qui s'adapte — gratuit, sans inscription pour commencer.
NumiÉvaluation · Seconde📝 Algorithmique & Python — sujet A
Durée conseillée : 45 min. Le barème est indiqué pour chaque exercice. Sujet n°1.
Exercice 1/ 1 pt
Après `x = 3,14`, quel est le type de la variable ?
Coche la bonne réponse.
Exercice 2/ 1 pt
Que s'affiche-t-il ? ```python x = 7 if x >= 0: print("positif") else: print("négatif") ```
Coche la bonne réponse.
Exercice 3/ 1 pt
Que vaut `s` à la fin ? ```python s = 0 for i in range(1, 5): s = s + i ```
Coche la bonne réponse.
Exercice 4/ 1,5 pt
Que s'affiche-t-il ? ```python x = 3 if x > 0: print("positif") elif x == 0: print("nul") else: print("négatif") ```
Coche la bonne réponse.
Exercice 5/ 1,5 pt
Quelle valeur `s` prend-elle après l'exécution de ? ```python s = 0 for i in range(1, 4): s = s + i ```
Coche la bonne réponse.
Exercice 6/ 1,5 pt
Que s'affiche-t-il ? ```python x = -2 if x > 0: print("positif") elif x == 0: print("nul") else: print("négatif") ```
Coche la bonne réponse.
Exercice 7/ 2 pts
`return x, y` renvoie le tuple `(x, y)`. Ici `f(9, 4)`.
- a) En Python, que construit l'instruction `return a + b, a - b` ?
- b) Avec `a = 9`, `b = 4`, calcule la première composante `a + b`.
Réponse :
- c) Calcule maintenant la deuxième composante `a - b`.
Réponse :
Exercice 8/ 2 pts
La fonction `maximum` renvoie le plus grand de ses deux arguments. Ici `x = 7`, `y = 6`.
- a) Le test `if x > y` sépare deux cas. Dans quel cas la fonction renvoie-t-elle `x` ?
- b) Applique la fonction à `x = 7`, `y = 6`. Quelle valeur renvoie-t-elle ?
Réponse :
Exercice 9/ 2 pts
On veut que la boucle s'arrête dès que `x` atteint `11`. Quelle est la bonne condition ? ```python x = 0 ... : x += 1 ```
Coche la bonne réponse.
Exercice 10/ 2 pts
Qu'affiche ce programme ? ```python x = 1 for i in range(5): x = x + 2 print(x) ```
Réponse :
Exercice 11/ 2 pts
Quelle est la complexité de l'algorithme ? ```python def somme(L): s = 0 for x in L: s += x return s ```
Coche la bonne réponse.
Exercice 12/ 2,5 pts
Qu'est-ce qu'un invariant de boucle ?
Coche la bonne réponse.
Corrigé et barème — Algorithmique & Python — sujet A (Seconde) · Sujet n°1
- 1. (1 pt) `float` — `x = 3,14` crée une variable de type `float`.
- 2. (1 pt) positif — `7 ≥ 0`, donc on affiche `"positif"`.
- 3. (1 pt) 10 — `s = 1 + 2 + ... + 4 = 10`.
- 4. (1,5 pt) positif — `3 > 0`, donc `"positif"`.
- 5. (1,5 pt) `6` — s = 1 + 2 + \ldots + 3 = 6.
- 6. (1,5 pt) négatif — `-2 < 0`, donc `"négatif"`.
- 7. (2 pts) a) Un couple (tuple) à deux valeurs `(a + b, a - b)` ; b) 13 ; c) 5 — `f(9, 4)` retourne `(9+4, 9-4) = (13, 5)`.
- 8. (2 pts) a) Quand `x` est strictement supérieur à `y` ; b) 7 — `maximum(7, 6)` retourne `7` car `7 > 6`.
- 9. (2 pts) while x < 11: — `while x < 11` : la boucle tourne pour x = 0, 1, ..., 10 et s'arrête quand x = 11.
- 10. (2 pts) 11 — La boucle s'exécute 5 fois, ajoutant 2 à chaque fois : `1 + 5×2 = 11`.
- 11. (2 pts) O(n) — La boucle parcourt chaque élément une fois : complexité O(n) (linéaire).
- 12. (2,5 pts) Une propriété vraie avant, pendant et après chaque itération — Un invariant de boucle est une propriété logique vraie avant la première itération et maintenue à chaque itération. Il sert à prouver la correction d'un algorithme.
NumiÉvaluation · Seconde📝 Algorithmique & Python — sujet B
Durée conseillée : 45 min. Le barème est indiqué pour chaque exercice. Sujet n°2.
Exercice 1/ 1 pt
Que s'affiche-t-il ? ```python x = -3 if x >= 0: print("positif") else: print("négatif") ```
Coche la bonne réponse.
Exercice 2/ 1 pt
Que vaut `s` après l'exécution ? ```python a = 7 b = 5 s = a + b ```
Coche la bonne réponse.
Exercice 3/ 1 pt
Après `n = 7`, quel est le type de la variable ?
Coche la bonne réponse.
Exercice 4/ 1,5 pt
Quelle valeur `s` prend-elle après l'exécution de ? ```python s = 0 for i in range(1, 7): s = s + i ```
Coche la bonne réponse.
Exercice 5/ 1,5 pt
Quelle est la valeur de `p` à la fin ? ```python p = 1 for i in range(1, 4): p = p * i ```
Coche la bonne réponse.
Exercice 6/ 1,5 pt
Que s'affiche-t-il ? ```python x = -8 if x > 0: print("positif") elif x == 0: print("nul") else: print("négatif") ```
Coche la bonne réponse.
Exercice 7/ 2 pts
Combien de fois `print('*')` s'exécute-t-il ? ```python for i in range(3): for j in range(4): print('*') ```
Réponse :
Exercice 8/ 2 pts
Ce code lève une erreur car `s` n'existe pas au premier tour. ```python for i in range(1, 7): s = s + i print(s) ``` On ajoute la ligne `s = 0` avant la boucle. Que vaut alors `s` à la fin ?
Réponse :
Exercice 9/ 2 pts
`return x, y` renvoie le tuple `(x, y)`. Ici `f(8, 3)`.
- a) En Python, que construit l'instruction `return a + b, a - b` ?
- b) Avec `a = 8`, `b = 3`, calcule la première composante `a + b`.
Réponse :
- c) Calcule maintenant la deuxième composante `a - b`.
Réponse :
Exercice 10/ 2 pts
Que retourne `f(2)` ? ```python def f(x): return 2 * x + 3 ```
Réponse :
Exercice 11/ 2 pts
Que vaut `résultat` à la fin ? ```python résultat = 1 for k in range(1, 5): résultat = résultat * k ```
Réponse :
Exercice 12/ 2,5 pts
Comment prouver qu'une boucle `while` se termine toujours ?
Coche la bonne réponse.
Corrigé et barème — Algorithmique & Python — sujet B (Seconde) · Sujet n°2
- 1. (1 pt) négatif — `-3 < 0`, donc on affiche `"négatif"`.
- 2. (1 pt) 12 — `s = 7 + 5 = 12`.
- 3. (1 pt) `int` — `n = 7` crée une variable de type `int`.
- 4. (1,5 pt) `21` — s = 1 + 2 + \ldots + 6 = 21.
- 5. (1,5 pt) 6 — `p = 1 × 2 × ... × 3 = 6`.
- 6. (1,5 pt) négatif — `-8 < 0`, donc `"négatif"`.
- 7. (2 pts) 12 — 3 \times 4 = 12 appels à `print`.
- 8. (2 pts) 21 — Avec `s = 0` avant la boucle : `s = 1 + 2 + ... + 6 = 21`.
- 9. (2 pts) a) Un couple (tuple) à deux valeurs `(a + b, a - b)` ; b) 11 ; c) 5 — `f(8, 3)` retourne `(8+3, 8-3) = (11, 5)`.
- 10. (2 pts) 7 — `f(2) = 2 × 2 + 3 = 4 + 3 = 7`.
- 11. (2 pts) 24 — Ce programme calcule la factorielle : `résultat = 4! = 24`.
- 12. (2,5 pts) Montrer qu'une quantité entière strictement décroissante et minorée atteint sa borne — On définit un variant : une expression entière positive qui décroît strictement à chaque itération. Quand elle atteint 0, la boucle s'arrête.
Une évaluation Algorithmique & Python Seconde toujours nouvelle
Ce contrôle est généré par le moteur Numi : chaque « Nouveau sujet » produit des exercices inédits de Algorithmique & Python (Seconde, 15 – 16 ans), gradués du plus simple au plus exigeant, strictement conformes au programme officiel de l'Éducation nationale. Le barème sur 20 suit la difficulté des exercices ; le corrigé occupe la deuxième page.
Feuille d'exercices Algorithmique & Python à imprimer →Exercices Algorithmique & Python en ligne →