Aller au contenu
Réussir mon BTS SIO

Tape une notion, une commande ou le nom d'une épreuve.

Par exemple

Chapitre 1221 minDébutant

Exercices corrigés d'arithmétique type E3

Par Josselyn C., prof de BTS SIO. Mis à jour le .

À la fin de ce chapitre, tu sauras

  • dire où et sous quelle forme l'arithmétique tombe à l'E3 ;
  • appliquer une méthode de rédaction en six points ;
  • traiter des sujets complets, de la conversion au codage affine.

5 exercices corrigés

Ce chapitre rassemble des sujets d'arithmétique construits comme ceux de l'épreuve E3 « Mathématiques pour l'informatique » du BTS SIO : un QCM de numération, un chiffrement affine avec des algorithmes à compléter, un problème de congruences et de liste circulaire, une question d'arrondi en base 2, une décomposition en facteurs premiers à programmer. Chaque sujet est corrigé en entier, avec la rédaction attendue sur une copie. Commence par la méthode, puis traite chaque sujet au brouillon avant d'ouvrir le corrigé.

Où l'arithmétique tombe à l'E3

L'épreuve E3 (coefficient 3), commune aux options SISR et SLAM, prend deux formes selon ton statut :

  • en contrôle en cours de formation (CCF), une situation pratique d'algorithmique (sur machine, avec un oral) et une situation écrite de 55 minutes, au second semestre de deuxième année, sur les autres modules du programme ;
  • en forme ponctuelle, un écrit de 2 heures de deux ou trois exercices, dont un évalue la capacité à programmer.

L'arithmétique est l'un des modules de l'écrit, à côté de la logique et de l'algèbre de Boole, du calcul matriciel, de la théorie des ensembles et des graphes. La calculatrice est autorisée en mode examen. Le cours d'algorithmique détaille la situation d'algorithmique de l'E3.

Ce que les sujets demandent, classé par notion

Le sujet de la session 2026 (écrit de 2 heures) en donne une bonne image : son exercice 1 était un QCM dont deux questions portaient sur la numération, et son exercice 2, sur 5 points, entièrement consacré au codage affine. Le site en propose une proposition de corrigé non officielle.

NotionType de questionExemple (sujet 2026 ou classique)Chapitre
Numération des réelsConvertir un nombre à virgule de la base 2 vers la base 10(10110,11101)₂ = 22,90625 (QCM 2026)3
Calcul en base 16Additionner deux nombres hexadécimaux(3D8)₁₆ + (2C5)₁₆ = (69D)₁₆ (QCM 2026)4
Conversions d'entiersPasser d'une base à une autre, lire une adresse IP ou une couleur156 = (10011100)₂ = (9C)₁₆1 et 2
Arrondi, précisionArrondir en base 2, expliquer une erreur de calcul flottant0,1 arrondi à 2⁻⁸ près3
CongruencesCoder une lettre, réduire un calcul modulo nCoder « SI » avec y ≡ 9x + 5 [26] (2026)8
Inverse modulaireCompléter l'algorithme de recherche de l'inverse, l'appliquerinverse(9) = 3 modulo 26 (2026)9
DéchiffrementÉtablir la formule de décodage, décoder un motx ≡ 3y + 11 [26] (2026)10
PGCDCompter les clés valables, tester si deux nombres sont premiers entre eux12 × 26 = 312 clés (2026)7
Multiples modulo nDire si un parcours circulaire est exhaustifSauts de 5 sur 12 positions9
Nombres premiersTester la primalité, décomposer, programmer le crible2 026 = 2 × 1 0136
ProgrammationCompléter, tracer ou corriger un algorithmenbCles(), inverse(a) (2026)11

La méthode en six points

  1. Lis tout l'exercice avant d'écrire. Les questions s'enchaînent : la formule de décodage de la question 4 s'appuie sur l'inverse de la question 3, et une question « en déduire » signale qu'il faut réutiliser le résultat précédent.
  2. Écris la base de chaque nombre en indice. (101)₂ et 101 ne sont pas le même nombre : une conversion sans indices est ambiguë et peut te coûter la question.
  3. Écris chaque division euclidienne sous la forme a = b × q + r, et chaque congruence avec son modulo : 167 = 6 × 26 + 11, donc 167 ≡ 11 [26].
  4. Vérifie chaque résultat dans l'autre sens : reconvertis en base 10, recode la lettre décodée, multiplie l'inverse trouvé par a. Ça prend quelques secondes, et une erreur dans une question se propage à toutes les suivantes.
  5. Pour un algorithme à compléter, fais tourner ta version sur un petit exemple, ligne par ligne, avant de la recopier : bornes des boucles (« de 1 à 25 »), condition d'arrêt (« ≠ 1 » et non « = 1 »), valeur renvoyée.
  6. Rédige les conclusions avec les mots de l'énoncé : « le mot SI se code LZ », « le parcours passe par les 18 postes ».

Sujet 1 : QCM de numération

Exercice 1 sur 5 Sujet 1 (QCM, numération et calcul en base 2 et 16) Réussi À revoir

Pour chaque question, une seule réponse est exacte. Justifie ton choix.

  1. Le nombre (110101,11)₂ s'écrit en base 10 :
    • A. 53,3
    • B. 53,75
    • C. 107,5
    • D. 53,11
  2. La somme (A7)₁₆ + (5C)₁₆ vaut :
    • A. (FF)₁₆
    • B. (F13)₁₆
    • C. (103)₁₆
    • D. (113)₁₆
  3. Le produit (1011)₂ × (100)₂ vaut :
    • A. (1111)₂
    • B. (101100)₂
    • C. (1011100)₂
    • D. (10110)₂
  4. Le nombre 0,1 en base 10 s'écrit en base 2 :
    • A. (0,1)₂
    • B. (0,0001)₂
    • C. (0,000110011…)₂, avec une infinité de chiffres
    • D. (0,1010)₂
  5. Combien de bits faut-il au minimum pour numéroter 300 équipements différents ?
    • A. 8
    • B. 9
    • C. 10
    • D. 300
Voir la réponseMasquer la réponse de l'exercice 1
  1. B. Partie entière : (110101)₂ = 32 + 16 + 4 + 1 = 53. Partie fractionnaire : (0,11)₂ = 0,5 + 0,25 = 0,75. Le nombre vaut 53,75.
  2. C. Colonne de droite : 7 + C = 7 + 12 = 19 = 16 + 3, on écrit 3, retenue 1. Colonne de gauche : A + 5 + 1 = 16, on écrit 0, retenue 1, qui descend. Résultat (103)₁₆. Vérification : 167 + 92 = 259 = 256 + 3.
  3. B. Multiplier par (100)₂ = 4 = 2², c'est ajouter deux 0 à droite : (101100)₂. Vérification : 11 × 4 = 44 = 32 + 8 + 4.
  4. C. Par multiplications successives : 0,2 (0), 0,4 (0), 0,8 (0), 1,6 (1), 1,2 (1), 0,4 (0)… on retombe sur 0,4 : l'écriture est infinie et périodique, (0,0001100110011…)₂. La réponse A vaut 0,5, la B 0,0625, la D 0,625.
  5. B. Il faut 2ⁿ ≥ 300 : 2⁸ = 256 ne suffit pas, 2⁹ = 512 suffit. 9 bits.

Tu avais trouvé ?

Sujet 2 : codage affine

Exercice 2 sur 5 Sujet 2 (congruences, inverse, algorithmes, décodage) Réussi À revoir

Un service informatique veut chiffrer les noms de ses fichiers de journalisation avec un codage affine. Chaque lettre est remplacée par son rang x (A = 0, B = 1, …, Z = 25), puis par la lettre de rang y, où y est le reste de la division euclidienne de 11x + 8 par 26. On note y ≡ 11x + 8 [26]. La clé est le couple (11, 8).

  1. Montre que la lettre B est codée par T, puis code le mot « BTS ».

  2. Une clé (a, b) est dite acceptable si deux lettres différentes sont toujours codées par deux lettres différentes. On admet que c'est le cas si et seulement si PGCD(a, 26) = 1.

    • a. Justifie que la clé (11, 8) est acceptable.
    • b. Complète l'algorithme ci-dessous pour qu'il renvoie le nombre de clés acceptables, puis donne ce nombre.
    text
    Fonction nbCles()
        nb ← 0
        Pour a allant de 1 à ...... faire
            Si pgcd(a, 26) ...... alors
                nb ← ......
            Fin Si
        Fin Pour
        Renvoyer nb × 26
    
  3. a. Complète l'algorithme suivant, qui renvoie l'inverse de a modulo 26 (on suppose PGCD(a, 26) = 1).

    text
    Fonction inverse(a)
        c ← 1
        Tant que reste(a × c, 26) ...... faire
            c ← c + 1
        Fin Tant que
        Renvoyer ......
    

    b. Détermine inverse(11), en justifiant.

  4. a. Montre que si 11x + 8 ≡ y [26], alors x ≡ 19y + 4 [26].

    b. Décode le mot « RNGBM ».

Voir la réponseMasquer la réponse de l'exercice 2

1. B a pour rang x = 1. 11 × 1 + 8 = 19, et 19 < 26, donc y = 19 : la lettre T. B est bien codée par T.

  • T : x = 19. 11 × 19 + 8 = 217 = 8 × 26 + 9, donc y = 9 : J.
  • S : x = 18. 11 × 18 + 8 = 206 = 7 × 26 + 24, donc y = 24 : Y.

Le mot « BTS » se code « TJY ».

2. a. 26 = 2 × 13 et 11 est un nombre premier qui ne divise pas 26 : PGCD(11, 26) = 1. Par l'algorithme d'Euclide : 26 = 11 × 2 + 4 ; 11 = 4 × 2 + 3 ; 4 = 3 × 1 + 1 ; 3 = 1 × 3 + 0. Le dernier reste non nul est 1. La clé est acceptable.

2. b.

text
Fonction nbCles()
    nb ← 0
    Pour a allant de 1 à 25 faire
        Si pgcd(a, 26) = 1 alors
            nb ← nb + 1
        Fin Si
    Fin Pour
    Renvoyer nb × 26

Les valeurs de a entre 1 et 25 premières avec 26 sont les nombres impairs différents de 13 : 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25, soit 12 valeurs. Il y a 12 × 26 = 312 clés acceptables.

3. a.

text
Fonction inverse(a)
    c ← 1
    Tant que reste(a × c, 26) ≠ 1 faire
        c ← c + 1
    Fin Tant que
    Renvoyer c

3. b. On cherche le plus petit c tel que 11c ≡ 1 [26]. Les nombres de la forme 26k + 1 sont 27, 53, 79, 105, 131, 157, 183, 209… et 209 = 11 × 19 est le premier divisible par 11. inverse(11) = 19. Vérification : 11 × 19 = 209 = 8 × 26 + 1.

4. a. On part de 11x + 8 ≡ y [26] et on multiplie les deux membres par 19 :

19 × 11x + 19 × 8 ≡ 19y [26], soit 209x + 152 ≡ 19y [26].

Or 209 = 8 × 26 + 1 ≡ 1 [26] et 152 = 5 × 26 + 22 ≡ 22 [26]. Donc x + 22 ≡ 19y [26], puis x ≡ 19y − 22 [26]. Comme −22 ≡ −22 + 26 = 4 [26], on obtient x ≡ 19y + 4 [26].

4. b.

Lettre codéey19y + 4Reste modulo 26Lettre
R17327327 = 12 × 26 + 15 → 15P
N13251251 = 9 × 26 + 17 → 17R
G6118118 = 4 × 26 + 14 → 14O
B12323X
M12232232 = 8 × 26 + 24 → 24Y

Le mot « RNGBM » se décode « PROXY ». Vérification : P (15) se code 11 × 15 + 8 = 173 = 6 × 26 + 17 → R.

Tu avais trouvé ?

Sujet 3 : astreintes et congruences

Exercice 3 sur 5 Sujet 3 (PGCD, liste circulaire, congruences) Réussi À revoir

Une entreprise compte 18 postes de travail en open space, numérotés de 0 à 17 et disposés en anneau autour d'une colonne technique. Un script de maintenance doit vérifier les postes un par un. Il commence par le poste 0, puis passe à chaque étape au poste situé s numéros plus loin dans l'anneau (après le 17 vient le 0).

Partie A

  1. On choisit s = 4. Donne la liste des postes vérifiés avant que le script revienne au poste 0. Le parcours est-il exhaustif ?
  2. Calcule PGCD(4, 18) et explique le résultat de la question 1 à l'aide de la propriété du cours.
  3. On choisit s = 5. Sans lister les postes, justifie que tous les postes seront vérifiés.
  4. Donne toutes les valeurs de s comprises entre 1 et 17 qui permettent de vérifier tous les postes.

Partie B

Les journaux du script sont archivés dans des fichiers de 2 964 lignes, et ceux d'un autre outil dans des fichiers de 1 209 lignes. On veut découper tous ces fichiers en blocs de même nombre de lignes, le plus grand possible.

  1. Calcule PGCD(2 964, 1 209) par l'algorithme d'Euclide.
  2. Combien de lignes compte un bloc ? En combien de blocs est découpé chaque type de fichier ?

Partie C

Le script s'exécute une fois par jour. Pour répartir la charge, la n-ième exécution (n ≥ 1) envoie son rapport vers le serveur numéro reste(2ⁿ, 9).

  1. Complète le tableau des restes de 2ⁿ modulo 9 pour n allant de 1 à 6.
  2. En déduis vers quel serveur part le rapport de la 2 026e exécution.
Voir la réponseMasquer la réponse de l'exercice 3

Partie A

  1. Positions : 0, 4, 8, 12, 16, 20 ≡ 2, 6, 10, 14, 18 ≡ 0. Les postes vérifiés sont 0, 4, 8, 12, 16, 2, 6, 10 et 14 : seulement les 9 postes pairs. Le parcours n'est pas exhaustif.
  2. 18 = 4 × 4 + 2 ; 4 = 2 × 2 + 0 : PGCD(4, 18) = 2. D'après la propriété du cours, modulo 18, les multiples de 4 sont exactement les multiples de PGCD(4, 18) = 2 : le script ne visite que les postes de numéro pair, au nombre de 18 ÷ 2 = 9.
  3. 18 = 5 × 3 + 3 ; 5 = 3 × 1 + 2 ; 3 = 2 × 1 + 1 ; 2 = 1 × 2 + 0 : PGCD(5, 18) = 1. Les multiples de 5 modulo 18 sont les multiples de 1, c'est-à-dire tous les entiers de 0 à 17 : tous les postes sont vérifiés.
  4. Il faut PGCD(s, 18) = 1, avec 18 = 2 × 3² : s ne doit être divisible ni par 2 ni par 3. s ∈ {1, 5, 7, 11, 13, 17}.

Partie B

  1. 2 964 = 1 209 × 2 + 546 ; 1 209 = 546 × 2 + 117 ; 546 = 117 × 4 + 78 ; 117 = 78 × 1 + 39 ; 78 = 39 × 2 + 0. PGCD(2 964, 1 209) = 39.
  2. Un bloc compte 39 lignes. 2 964 ÷ 39 = 76 blocs et 1 209 ÷ 39 = 31 blocs.

Partie C

  1. On multiplie chaque reste par 2 et on réduit modulo 9 :

    n123456
    reste(2ⁿ, 9)248751

    (2⁴ = 16 ≡ 7 ; 7 × 2 = 14 ≡ 5 ; 5 × 2 = 10 ≡ 1.)

  2. 2⁶ ≡ 1 [9] et 2 026 = 6 × 337 + 4. Donc 2²⁰²⁶ = (2⁶)³³⁷ × 2⁴ ≡ 1 × 16 ≡ 7 [9]. Le rapport part vers le serveur 7.

Tu avais trouvé ?

Sujet 4 : arrondi et nombres à virgule

Exercice 4 sur 5 Sujet 4 (réels en base 2, arrondi, flottants) Réussi À revoir

Un capteur de température transmet ses mesures en binaire, avec un nombre limité de bits après la virgule.

  1. Le capteur envoie (11010,011)₂. Quelle est la température en base 10 ?
  2. Convertis 13,40625 en base 2, puis en base 16.
  3. On veut transmettre 6,7 avec 6 bits après la virgule.
    • a. Donne les 7 premiers bits après la virgule de l'écriture binaire de 0,7.
    • b. Donne l'arrondi par défaut et l'arrondi par excès de 6,7 à 2⁻⁶ près, en base 2 puis en base 10.
    • c. Quel est l'arrondi au plus près ? Justifie de deux façons.
  4. Un programme Python compare deux mesures avec if mesure == 6.7:. Explique pourquoi ce test est déconseillé et propose une alternative.
Voir la réponseMasquer la réponse de l'exercice 4
  1. (11010)₂ = 16 + 8 + 2 = 26 et (0,011)₂ = 0,25 + 0,125 = 0,375. La température est 26,375 °C.

  2. 13 = (1101)₂. Pour 0,40625 : × 2 = 0,8125 → 0 ; × 2 = 1,625 → 1 ; 0,625 × 2 = 1,25 → 1 ; 0,25 × 2 = 0,5 → 0 ; 0,5 × 2 = 1 → 1, fin. 13,40625 = (1101,01101)₂. En base 16, on groupe par 4 depuis la virgule : 1101 → D ; 0110 1000 (on complète à droite) → 6 et 8. (D,68)₁₆. Vérification : 13 + 6/16 + 8/256 = 13 + 0,375 + 0,03125 = 13,40625.

  3. a. 0,7 → 1,4 (1) → 0,8 (0) → 1,6 (1) → 1,2 (1) → 0,4 (0) → 0,8 (0) → 1,6 (1). Les 7 premiers bits sont 1011001.

    b. 6 = (110)₂. Par défaut : (110,101100)₂ = 6 + 44/64 = 6,6875. Par excès : on ajoute 2⁻⁶ : (110,101101)₂ = 6 + 45/64 = 6,703125.

    c. L'arrondi au plus près est (110,101101)₂ = 6,703125, l'arrondi par excès. Première justification : le premier bit supprimé (le 7e) vaut 1. Seconde justification : 6,7 − 6,6875 = 0,0125 et 6,703125 − 6,7 = 0,003125, plus petit.

  4. 6,7 n'a pas d'écriture binaire finie : il est stocké arrondi (sur 52 bits de mantisse en double précision), et une mesure calculée ou convertie peut différer de cette valeur arrondie par une infime quantité. Le test == risque d'être faux pour des valeurs « égales ». On compare avec une tolérance : if abs(mesure - 6.7) < 1e-9: ou if math.isclose(mesure, 6.7):.

Tu avais trouvé ?

Sujet 5 : nombres premiers et programmation

Exercice 5 sur 5 Sujet 5 (décomposition, diviseurs, algorithme) Réussi À revoir

  1. Décompose 2 520 et 1 386 en produits de facteurs premiers.

  2. En déduis PGCD(2 520, 1 386).

  3. Combien 2 520 a-t-il de diviseurs ?

  4. On considère l'algorithme suivant, où n est un entier supérieur ou égal à 2.

    text
    Fonction f(n)
        d ← 2
        Tant que n > 1 faire
            Si reste(n, d) = 0 alors
                Afficher d
                n ← quotient(n, d)
            Sinon
                d ← d + 1
            Fin Si
        Fin Tant que
    

    a. Fais la trace de f(90) : valeurs de n, de d et affichages successifs.

    b. Que fait cet algorithme ?

    c. Traduis-le en Python.

Voir la réponseMasquer la réponse de l'exercice 5
  1. 2 520 = 10 × 252 = (2 × 5) × (2² × 3² × 7) = 2³ × 3² × 5 × 7. 1 386 = 2 × 693 = 2 × 9 × 77 = 2 × 3² × 7 × 11.

  2. Facteurs communs avec le plus petit exposant : 2¹, 3², 7¹. PGCD = 2 × 9 × 7 = 126.

  3. (3 + 1)(2 + 1)(1 + 1)(1 + 1) = 4 × 3 × 2 × 2 = 48 diviseurs.

  4. a. Trace :

    ndreste(n, d) = 0 ?Affichage
    902oui2
    452non
    453oui3
    153oui3
    53non
    54non
    55oui5
    15fin de la boucle

    L'algorithme affiche 2, 3, 3, 5.

    b. Il affiche la décomposition de n en produit de facteurs premiers, chaque facteur répété autant de fois que son exposant : 90 = 2 × 3² × 5. Un d non premier (comme 4) ne divise jamais le n courant, car ses facteurs ont déjà été retirés.

    c.

    def f(n):
        d = 2
        while n > 1:
            if n % d == 0:
                print(d)
                n = n // d
            else:
                d = d + 1
    

Tu avais trouvé ?

Chapitre terminé !

Fais les 5 exercices avant de passer à la suite : c'est en t'entraînant que tout se fixe.

chapitres
–
de série
–
du cours
–
Chapitre suivant : Aide-mémoire d'arithmétiqueRevoir le sommaire du cours