Aller au contenu
Accueil › Exercices de maths › 3ème › Algorithmique et programmation : exercices de maths 3ème

Algorithmique et programmation : exercices de maths 3ème

  • par
Rate this post
Exercices de maths 3ème : Algorithmique et programmation

22 exercices classés par difficulté (★ facile, ★★ moyen, ★★★ difficile). Cherche d’abord sans regarder le corrigé !

2 Vrai ou faux ? ★★★

On exécute :

mettre [A] à (4)
mettre [B] à (A + 1)
mettre [A] à (10)
ajouter (2) à [B]

Dis si chaque affirmation est vraie ou fausse et justifie.

  1. À la fin, A vaut 10.
  2. À la fin, B vaut 12.
  3. Quand on change A à la ligne 3, B change aussi automatiquement.
  4. À la fin, A + B = 17.

3 Un programme de calcul ★★★

Programme de calcul : choisir un nombre n ; lui ajouter 5 ; multiplier le résultat par 4 ; soustraire le triple du nombre de départ.

  1. Écris ce programme avec des blocs (variable n, variable R).
  2. Quel résultat obtient-on pour n = 6 ? pour n = −2 ?
  3. Quelle formule simple donne le résultat pour tout n ? Prouve-le.

4 Tarif de cinéma ★★★

Un cinéma applique ce programme (la variable âge contient l’âge du spectateur) :

si (âge < 12) alors
    mettre [prix] à (5)
sinon
    si (âge < 26) alors
        mettre [prix] à (7)
    sinon
        mettre [prix] à (9)
fin si

Quel prix est affiché pour un spectateur de 8 ans ? de 12 ans ? de 25 ans ? de 26 ans ? de 40 ans ?

5 Une boucle qui additionne ★★★

On exécute :

mettre [S] à (10)
répéter (6) fois
    ajouter (4) à [S]
dire (S)

Écris la valeur de S après chaque tour, puis la valeur dite par le programme.

6 Le lutin et le pentagone ★★★

Le lutin exécute : « répéter 5 fois : avancer de 60 pas, tourner de 72° ».

  1. Quelle figure dessine-t-il ?
  2. Quelle est la longueur totale parcourue ?
  3. Quel angle faut-il utiliser pour dessiner un polygone régulier à 9 côtés ? à 20 côtés ?

7 Diviser par 2 tant que c’est grand ★★★

On exécute :

mettre [N] à (100)
mettre [k] à (0)
tant que (N > 10)
    mettre [N] à (N ÷ 2)
    ajouter (1) à [k]
dire (k)
dire (N)

Combien de tours fait la boucle ? Que dit le programme ?

8 Pair ou impair ? ★★★

Écris un programme qui demande un entier et dit s’il est pair ou impair (utilise « modulo »). Quel est le résultat pour 17 ? pour 40 ? pour 2025 ?

9 Des mentions en cascade ★★★

Un programme attribue une mention à partir d’une note sur 20 :

si (note ≥ 16) alors dire [Très bien]
sinon si (note ≥ 14) alors dire [Bien]
sinon si (note ≥ 12) alors dire [Assez bien]
sinon si (note ≥ 10) alors dire [Passable]
sinon dire [Insuffisant]
  1. Quelle mention pour 15,5 ? 10 ? 9,5 ? 12 ? 16 ?
  2. Que se passerait-il si on plaçait le test « note ≥ 10 » en premier ?

10 Une fonction de prix ★★★

Une boutique vend des billets 4,50 € l’unité et accorde 10 % de remise à partir de 10 billets.

définir prix (n)
    si (n ≥ 10) alors
        renvoyer (n × 4,5 × 0,9)
    sinon
        renvoyer (n × 4,5)
fin de la définition
  1. Calcule prix(4), prix(10) et prix(12).
  2. Calcule prix(9). Que remarques-tu ? Quel conseil donner à un client qui veut 9 billets ?

11 Somme des premiers entiers ★★★

Programme :

mettre [S] à (0)
pour [i] de (1) à (12)
    ajouter (i) à [S]
dire (S)
  1. Écris la valeur de S après chacun des 12 tours.
  2. Que dirait le programme avec « de 1 à 100 » ? (Astuce : associe 1 et 100, 2 et 99…)

12 Atteindre un objectif d’épargne ★★★

Lina a 200 € et ajoute 12 € chaque mois. Elle veut acheter un objet à 350 €.

mettre [somme] à (200)
mettre [mois] à (0)
tant que (somme < 350)
    ajouter (12) à [somme]
    ajouter (1) à [mois]
dire (mois)

Que dit le programme ? Que contient alors la variable somme ? Rédige une phrase réponse.

13 Chercher l’erreur ★★★

Un élève veut calculer la moyenne de trois notes a, b et c :

mettre [m] à (a + b + c ÷ 3)
dire (m)
  1. Quel résultat donne-t-il pour a = 12, b = 15, c = 9 ?
  2. Quelle est la vraie moyenne ?
  3. Corrige l’instruction.

14 Une étoile au lutin ★★★

Le lutin exécute « répéter 5 fois : avancer de 70 pas, tourner de 144° ».

  1. Calcule la somme des rotations. Combien de tours complets cela fait-il ?
  2. Le lutin revient-il à son point de départ ? Fais un dessin.
  3. Avec « répéter 8 fois : avancer de 50, tourner de 135° », la figure se referme-t-elle ? Justifie.

15 Calculer un PGCD par soustractions ★★★

Exécute l’algorithme des soustractions successives pour a = 105 et b = 63, en remplissant un tableau. En déduis le PGCD, puis simplifie la fraction 63105.

16 L’algorithme d’Euclide ★★★

Voici l’algorithme d’Euclide :

tant que (b ≠ 0)
    mettre [r] à (a modulo b)
    mettre [a] à (b)
    mettre [b] à (r)
dire (a)

Avec a = 252 et b = 198, remplis un tableau de suivi (a, b, r) et donne le résultat. Combien de tours a-t-il fallu ?

17 Premier ou pas ? ★★★

Voici une fonction :

définir estPremier (n)
    mettre [d] à (2)
    tant que ((d × d) ≤ n) et ((n modulo d) ≠ 0)
        ajouter (1) à [d]
    si ((d × d) > n) alors
        dire [premier]
    sinon
        dire [pas premier]
fin de la définition
  1. Remplis un tableau de suivi (d et reste) pour n = 91, puis donne la réponse.
  2. Même question pour n = 97.
  3. Pourquoi peut-on s’arrêter dès que d × d > n ?
  4. Que répond la fonction pour n = 1 ? Est-ce correct ?

18 Compter les nombres premiers ★★★

On veut compter les nombres premiers inférieurs ou égaux à 30 :

mettre [compte] à (0)
pour [n] de (2) à (30)
    si (estPremier(n)) alors
        ajouter (1) à [compte]
dire (compte)

(estPremier renvoie « vrai » si n est premier.)

  1. Liste les nombres premiers de 2 à 30.
  2. Que dit le programme ?
  3. Montre à la main que 25 n’est pas premier en utilisant la méthode de la fonction.

19 Simuler 600 lancers de dé ★★★

On simule des lancers d’un dé équilibré à 6 faces :

mettre [compte] à (0)
répéter (600) fois
    mettre [dé] à (nombre aléatoire entre (1) et (6))
    si (dé = 6) alors
        ajouter (1) à [compte]
dire (compte ÷ 600)
  1. Quelle est la probabilité théorique d’obtenir 6 ? Combien de 6 attend-on environ ?
  2. Le programme est lancé et dit 112 pour compte. Calcule la fréquence observée, arrondie au millième.
  3. Comment modifier le programme pour estimer la probabilité que la somme de deux dés vaille 7 ? Quelle est la probabilité théorique ?

20 Une procédure « polygone » ★★★

On définit la procédure suivante :

définir polygone (n) (c)
    répéter (n) fois
        avancer de (c) pas
        tourner ↻ de (360 ÷ n) degrés
fin de la définition
  1. Quel angle de rotation pour polygone(8, 40) ? pour polygone(10, 25) ? pour polygone(12, 20) ? pour polygone(7, 30) (arrondi au centième) ?
  2. Quel est le périmètre de la figure tracée par polygone(10, 25) ?
  3. On veut une rotation de 24°. Combien de côtés le polygone a-t-il ?

21 Une spirale carrée ★★★

Le lutin exécute :

pour [i] de (1) à (6)
    avancer de (15 × i) pas
    tourner ↻ de (90) degrés
  1. Donne la longueur de chacun des 6 segments.
  2. Quelle est la longueur totale du tracé ?
  3. Fais un croquis. Pourquoi la figure ne se referme-t-elle pas ?

22 Le vol de la grêle (suite de Syracuse) ★★★

Programme : on part d’un entier n ; tant que n est différent de 1, on remplace n par n ÷ 2 s’il est pair, par 3 × n + 1 s’il est impair, et on compte les étapes.

mettre [étapes] à (0)
tant que (n ≠ 1)
    si ((n modulo 2) = 0) alors
        mettre [n] à (n ÷ 2)
    sinon
        mettre [n] à (3 × n + 1)
    ajouter (1) à [étapes]
dire (étapes)
  1. Écris toutes les valeurs successives de n pour n = 6 et donne le nombre d’étapes.
  2. Même question pour n = 12.
  3. Défi : pour n = 7, le programme dit 16. Écris la liste des valeurs pour le vérifier.

Voir le corrigé des exercices