← Retour aux ressources
Mathématiques · Classe de 2ⁿᵈᵉ

Algorithmique et programmation

Variables, instructions conditionnelles, boucles et fonctions : les bases de l'algorithmique au programme de 2nde générale

À propos de cette page
Cette évaluation sur « Algorithmique et programmation » en seconde permet de faire le point sur ses connaissances en mathématiques, comme lors d'un véritable contrôle. Elle suit le programme officiel de seconde et propose plusieurs exercices notés sur 20, avec un corrigé détaillé. Au programme : Qu'est-ce qu'un algorithme ?, Variables et affectation, Instructions d'entrée / sortie, Instructions conditionnelles. Travaille seul, chronomètre-toi, puis compare tes réponses au corrigé pour identifier les points à revoir. Parfait pour mesurer ses progrès et réviser efficacement. Évaluation gratuite conçue par un professeur particulier à Marseille pour aider les élèves de seconde en mathématiques.
Évaluation finale · Niveau difficile · Durée 60 min · Noté sur 20
60:00

Évaluation complète de fin de chapitre, tout en niveau difficile. Travaille seul et sans aide, puis vérifie tes réponses avec le corrigé détaillé dépliable en bas de page.

Exercice 1 — Lecture et trace d'exécution

/ 4 pts
  1. Recopiez et complétez le tableau de trace d'exécution du programme suivant pour les trois premières itérations :
    $s = 0$
    $for i in range(1, 6):$
    $s = s + i**2$
    $print(s)$

    is (avant)s (après)
    10
    2
    3
  2. Quelle valeur est affichée par $print(s)$ à la fin de l'exécution complète ?

Exercice 2 — Écriture d'une fonction Python

/ 5 pts
  1. Écrire une fonction Python $valeur_absolue(x)$ qui renvoie la valeur absolue de x (sans utiliser $abs()$).
  2. Écrire une fonction Python $compte_pairs(n)$ qui renvoie le nombre d'entiers pairs entre 1 et n inclus.
  3. Que renvoie $compte_pairs(10)$ ? Justifier.

Exercice 3 — Algorithme de recherche avec while

/ 5 pts
  1. On veut trouver le plus petit entier n ≥ 1 tel que 3n > 500.
  2. a) Écrire un algorithme Python (avec une boucle $while$) qui détermine cet entier n et l'affiche.
  3. b) Indiquer la valeur affichée et vérifier le résultat à la main.

Exercice 4 — Débogage d'un programme

/ 3 pts
  1. Le programme suivant est censé afficher la somme des entiers de 1 à 10, mais il contient deux erreurs. Identifiez-les et proposez le code corrigé.

    $s = 1$
    $for i in range(1, 10):$
    $s = s + i$
    $print(s)$

Exercice 5 — Problème de modélisation algorithmique

/ 3 pts
  1. Un pâtissier fabrique des macarons par boîtes. Chaque boîte contient 6 macarons. On dispose de n macarons.
  2. a) Écrire une fonction Python $boites(n)$ qui renvoie un tuple (nb_boites, reste) où nb_boites est le nombre de boîtes complètes et reste le nombre de macarons restants.
  3. b) Que renvoie $boites(25)$ ? Interpréter.
Corrigé détaillé

Exercice 1 — Lecture et trace d'exécution
Corrigé :
Tableau de trace :
i=1 : s passe de 0 à 0+1=1
i=2 : s passe de 1 à 1+4=5
i=3 : s passe de 5 à 5+9=14
i=4 : s passe de 14 à 14+16=30
i=5 : s passe de 30 à 30+25=55
Valeur affichée : 55 (somme des carrés de 1 à 5 : 1+4+9+16+25 = 55).

Exercice 2 — Écriture d'une fonction Python
Corrigé :
1) $def valeur_absolue(x):$
$if x >= 0: return x$
$else: return -x$

2) $def compte_pairs(n):$
$c = 0$
$for i in range(1, n+1):$
$if i % 2 == 0: c += 1$
$return c$

3) compte_pairs(10) renvoie 5. Les entiers pairs de 1 à 10 sont 2, 4, 6, 8, 10, soit 5 valeurs (ou directement n//2 = 10//2 = 5).

Exercice 3 — Algorithme de recherche avec while
Corrigé :
a) $n = 1$
$while 3**n <= 500:$
$n += 1$
$print(n)$

b) 3⁵ = 243 ≤ 500, 3⁶ = 729 > 500. L'algorithme affiche 6.
Vérification : 3⁶ = 729 > 500 ✓ et 3⁵ = 243 ≤ 500 ✓ → n = 6 est bien le plus petit entier satisfaisant la condition.

Exercice 4 — Débogage d'un programme
Corrigé :
Erreur 1 : La variable s doit être initialisée à 0 (et non 1), car on accumule une somme à partir de zéro.
Erreur 2 : $range(1, 10)$ génère les entiers de 1 à 9 ; pour inclure 10 il faut écrire $range(1, 11)$.

Code corrigé :
$s = 0$
$for i in range(1, 11):$
$s = s + i$
$print(s)$
La valeur affichée doit être 55.

Exercice 5 — Problème de modélisation algorithmique
Corrigé :
a) $def boites(n):$
$nb_boites = n // 6$
$reste = n % 6$
$return (nb_boites, reste)$

b) boites(25) renvoie (4, 1).
Interprétation : avec 25 macarons, on remplit 4 boîtes complètes (4 × 6 = 24 macarons) et il reste 1 macaron (25 − 24 = 1) qui ne suffit pas à remplir une 5e boîte.

Continuer ce chapitre
Autres chapitres
Bloqué sur ce chapitre ?

Cours particuliers de mathématiques à Marseille, en présentiel ou à distance — un prof qui s'adapte à ton rythme et reprend ce qui coince.

Réserver un 1er cours → Voir les tarifs