4ème

Algorithmique et programmation — 10 exercices corrigés de 4ème

Réviser algorithmique et programmation avec 10 exercices de types variés. Chaque exercice contient plusieurs questions et un corrigé détaillé, aéré et vérifiable. Programme de 4e actuellement applicable en 2026-2027.

L'essentiel à retenir

  • En Python, range(a,b) exclut la borne bb.
  • Une boucle répète une instruction.
  • Un accumulateur est mis à jour à chaque itération.
  • Même opération sur les deux membres d'une équation.
  • Vérifier les solutions trouvées.

Exercice 1 — Suivre un programme de calcul

1. Un algorithme multiplie le nombre de départ par 3, ajoute 7 puis soustrait le nombre de départ. Applique-le à 5. 2. Applique-le à −2-2. 3. Écris puis réduis une expression du résultat pour une entrée x.
Corrigé détaillé
Étape 1 — Question 1. 5→15→22→175\to15\to22\to\boxed{17}. Étape 2 — Question 2. −2→−6→1→1−(−2)=3-2\to-6\to1\to1-(-2)=\boxed3. Étape 3 — Question 3. 3x+7−x=2x+73x+7-x=\boxed{2x+7}. Pour x=5x=5, cela redonne 17.

Exercice 2 — Tableau de suivi de deux variables

1. Un script commence par A = 4 et B = 9. Quelles sont les deux valeurs après ces affectations ? 2. On effectue ensuite successivement A = A + B, puis B = A - B. Quelles sont les nouvelles valeurs ? 3. Enfin A = A - B. Quelles sont les valeurs finales ?
Corrigé détaillé
Étape 1 — Question 1. Au départ, A=4A=\boxed4 et B=9B=\boxed{9}. Étape 2 — Question 2. Après A = A + B : A = 13, B = 9. Puis B = A - B : B = 13 - 9 = 4 ; A reste 13. Étape 3 — Question 3. Dernière étape : A = 13 - 4 = 9 ; B = 4. Le programme échange les deux valeurs initiales.

Exercice 3 — Condition si ... alors ... sinon

1. Un jeu affiche « Gagné » si le score est supérieur ou égal à 10, « Perdu » sinon. Que s'affiche-t-il pour 7, 10 et 14 ? 2. Écris la condition avec un symbole de comparaison. 3. Si on remplace « supérieur ou égal » par « strictement supérieur », que s'affiche-t-il pour 10 ?
Corrigé détaillé
Étape 1 — Question 1. Pour 7 : Perdu ; pour 10 : Gagné ; pour 14 : Gagné. Étape 2 — Question 2. La condition est score ≥ 10. Étape 3 — Question 3. Avec score > 10, le score 10 ne satisfait plus la condition : le message devient Perdu.

Exercice 4 — Une boucle de répétition

1. Un compteur démarre à 0. On répète 5 fois : ajouter 3 puis afficher le compteur. Écris les cinq nombres affichés. 2. Quelle est la valeur finale du compteur ? 3. Combien de répétitions faut-il pour afficher 24 comme dernière valeur ?
Corrigé détaillé
Étape 1 — Question 1. On obtient successivement 3, 6, 9, 12, 15. Étape 2 — Question 2. Après cinq ajouts de 3, le compteur vaut 15\boxed{15}. Étape 3 — Question 3. On cherche 3n=243n=24 ; il faut 8\boxed8 répétitions.

Exercice 5 — Tracer un carré avec Scratch

1. Un lutin part de (0;0), orienté vers la droite. Il répète quatre fois : avancer de 20 puis tourner de 90° à gauche. Quelle figure trace-t-il ? 2. Quelle est sa position finale ? 3. Quelle distance a-t-il parcourue ?
Corrigé détaillé
Étape 1 — Question 1. Quatre côtés de longueur 20 et quatre rotations extérieures de 90° donnent un carré. Étape 2 — Question 2. Il revient au point (0;0) après avoir fait le tour complet. Étape 3 — Question 3. Distance 4×20=804\times20=\boxed{80} pas.

Exercice 6 — Modifier un script pour un rectangle

1. Propose un script de tortue dessinant un rectangle de longueur 40 et largeur 20. 2. Quel périmètre correspond au trajet complet ? 3. Quelles rotations doit-on conserver ?
Corrigé détaillé
Étape 1 — Question 1. Répéter 2 fois : avancer 40 ; tourner de 90° ; avancer 20 ; tourner de 90°. Étape 2 — Question 2. Périmètre 2(40+20)=1202(40+20)=\boxed{120} pas. Étape 3 — Question 3. Les angles extérieurs restent 90° : le lutin change de direction en suivant les angles droits du rectangle.

Exercice 7 — Déboguer l'ordre des instructions

1. On donne x = 4. Un script exécute x = x + 3, puis x = 2 × x. Quel est le résultat ? 2. On échange l'ordre de ces deux instructions. Quel est le nouveau résultat ? 3. Explique à partir d'expressions littérales pourquoi les scripts ne sont pas équivalents.
Corrigé détaillé
Étape 1 — Question 1. (4+3)×2=14(4+3)\times2=\boxed{14}. Étape 2 — Question 2. 2×4+3=112\times4+3=\boxed{11}. Étape 3 — Question 3. La première suite calcule 2(x+3)=2x+62(x+3)=2x+6, la deuxième 2x+32x+3. Elles diffèrent de 3 pour toute entrée x.

Exercice 8 — Tracer un triangle équilatéral

1. Un lutin doit tracer un triangle équilatéral de côté 50 pas. Combien de répétitions sont nécessaires ? 2. De combien doit-il tourner à chaque sommet (rotation extérieure) ? 3. Quelle est la longueur totale tracée ?
Corrigé détaillé
Étape 1 — Question 1. Un triangle équilatéral possède 3 côtés, donc trois répétitions. Étape 2 — Question 2. Il doit tourner de 360/3=120∘360/3=\boxed{120^\circ} entre deux côtés. Étape 3 — Question 3. 3×50=1503\times50=\boxed{150} pas.

Exercice 9 — Tester la parité d'un entier

1. Un programme reçoit un entier n. Que signifie le reste de la division euclidienne de n par 2 ? 2. Propose un test qui affiche « pair » ou « impair ». 3. Quel message obtient-on pour n=−7n=-7 et pour n=24n=24 ?
Corrigé détaillé
Étape 1 — Question 1. Le reste indique si n est divisible par 2. Un entier pair a un reste nul. Étape 2 — Question 2. Si le reste de n dans la division par 2 vaut 0, afficher « pair » ; sinon afficher « impair ». Étape 3 — Question 3. −7-7 n'est pas divisible par 2 : impair. 24=12×224=12\times2 : pair.

Exercice 10 — Chercher le nombre qui annule un programme

1. Un algorithme associe à l'entrée x le résultat 3x+7−x3x+7-x. Simplifie cette expression. 2. Quel nombre doit-on choisir pour obtenir 0 ? 3. Quel nombre faut-il choisir pour obtenir 21 ?
Corrigé détaillé
Étape 1 — Question 1. On regroupe les termes en x : 2x+7\boxed{2x+7}. Étape 2 — Question 2. 2x+7=02x+7=0 donne 2x=−72x=-7, donc x=−3,5\boxed{x=-3,5}. Étape 3 — Question 3. 2x+7=212x+7=21 donne 2x=142x=14, donc x=7\boxed{x=7}.