Aller au contenu principal
Wadifa InfoEmploi public au Maroc ع
Combien gagnerez-vous après l'avancement ? Ratibi vous le dit Tester →

Devoir surveillé n°1 – semestre 2 – Informatique – Tronc commun scientifique (modèle 1)

Devoir surveillé n°1 original du semestre 2 pour le Tronc commun scientifique, en 1 heure. Il porte sur le début de l'axe « Algorithmique et programmation » : notion d'algorithme, variables et types, instructions de lecture, d'écriture et d'affectation, exécution manuelle et structures conditionnelles (Si … Alors … Sinon, imbriquées).

NiveauTronc commun scientifique
MatièreInformatique
Semestresemestre 2
DevoirContrôle n° 1
Durée1 heure
Barèmesur 20
LeçonsNotion d'algorithme et démarche de résolution d'un problème, Variables, constantes et types de données, Instructions de base : lecture, écriture, affectation, Les structures conditionnelles
ProgrammeMEN – Orientations pédagogiques et programmes de l'enseignement de l'informatique au cycle secondaire qualifiant, Tronc commun

Devoirs modèles rédigés par l'équipe Wadifa Info, conformes au programme officiel, non officiels.

Énoncé

Exercice 1 – Notions de base (4 pts)

  1. Définir : algorithme ; variable ; constante. (1,5 pt)
  2. Remettre dans l'ordre les étapes de résolution d'un problème par ordinateur : écriture du programme ; analyse du problème ; exécution et test ; écriture de l'algorithme. (1 pt)
  3. Pour chaque donnée, proposer un nom de variable et un type (entier, réel, caractère, chaîne de caractères, booléen) : l'âge d'un élève ; la moyenne générale ; le nom d'une ville ; la réponse à la question « l'élève est-il admis ? » ; la première lettre d'un prénom. (1,5 pt)

Exercice 2 – Exécution manuelle d'algorithmes (5 pts)

Algorithme 1
Algorithme Mystere
Variables a, b : Entier
Début
    a ← 5
    b ← 3
    a ← a + b
    b ← a − b
    a ← a − b
    Écrire(a, b)
Fin

  1. Recopier et compléter le tableau d'exécution en donnant les valeurs de a et de b après chacune des cinq affectations. (2 pts)
  2. Que réalise cet algorithme ? (0,5 pt)
  3. On exécute les instructions : x ← 17 ; q ← x div 5 ; r ← x mod 5. Donner les valeurs de q et de r. Que représentent-elles ? (1 pt)
  4. Qu'affiche l'algorithme suivant pour n = 14, puis pour n = 7 ?
    Lire(n)
    Si n mod 2 = 0 Alors
        Écrire("pair")
    Sinon
        Écrire("impair")
    FinSi (1 pt)
  5. Pourquoi l'instruction « 5 ← a » est-elle incorrecte ? (0,5 pt)

Exercice 3 – Calcul d'une moyenne (5 pts)

Un élève a trois notes n1, n2 et n3, de coefficients respectifs 2, 3 et 1.

  1. Écrire un algorithme qui lit les trois notes, calcule la moyenne pondérée et affiche « Admis » si la moyenne est supérieure ou égale à 10, sinon « Non admis ». (3,5 pts)
  2. Exécuter cet algorithme pour n1 = 12, n2 = 8 et n3 = 15 : donner la moyenne et le message affiché. (1,5 pt)

Exercice 4 – Structure conditionnelle : remise sur un achat (6 pts)

Un magasin applique les remises suivantes : 10 % si le montant de l'achat est supérieur ou égal à 1000 DH ; 5 % si le montant est supérieur ou égal à 500 DH et inférieur à 1000 DH ; aucune remise sinon.

  1. Calculer le montant à payer pour des achats de 1200 DH, 700 DH et 300 DH. (1,5 pt)
  2. Écrire un algorithme qui lit le montant d'un achat, puis calcule et affiche la remise et le montant à payer (utiliser des structures conditionnelles imbriquées). (3 pts)
  3. Un élève a écrit la première condition sous la forme « Si montant > 1000 Alors ». Pour un achat de 1000 DH, quel montant son algorithme affiche-t-il ? Quel montant devrait-il afficher ? Corriger l'erreur. (1,5 pt)
Afficher le corrigé et le barème

Exercice 1 – Notions de base

  1. Algorithme : suite finie et ordonnée d'instructions qui permet de résoudre un problème en un nombre fini d'étapes.
    Variable : emplacement de la mémoire, désigné par un nom, dont le contenu peut changer pendant l'exécution.
    Constante : emplacement désigné par un nom dont la valeur est fixée et ne change pas pendant l'exécution.
  2. 1) analyse du problème ; 2) écriture de l'algorithme ; 3) écriture du programme dans un langage de programmation ; 4) exécution et test.
  3. age : entier ; moyenne : réel ; ville : chaîne de caractères ; admis : booléen (vrai ou faux) ; initiale : caractère. (Tout nom de variable significatif est accepté.)

Barème : Q1 : 0,5 + 0,5 + 0,5 ; Q2 : 1 ; Q3 : 0,3 + 0,3 + 0,3 + 0,3 + 0,3.

Exercice 2 – Exécution manuelle d'algorithmes

  1. Instructionab
    a ← 55—
    b ← 353
    a ← a + b83
    b ← a − b85
    a ← a − b35
    L'algorithme affiche : 3 5.
  2. Il échange (permute) les valeurs de a et de b, sans utiliser de troisième variable.
  3. q = 3 et r = 2 : q est le quotient et r le reste de la division euclidienne de 17 par 5 (17 = 5 × 3 + 2).
  4. Pour n = 14 : 14 mod 2 = 0, il affiche « pair ». Pour n = 7 : 7 mod 2 = 1, il affiche « impair ».
  5. Dans une affectation, la partie gauche doit être une variable (le contenant) : on ne peut pas affecter une valeur à la constante 5. Il faut écrire a ← 5.

Barème : Q1 : 0,4 + 0,4 + 0,4 + 0,4 + 0,4 ; Q2 : 0,5 ; Q3 : 0,5 + 0,5 ; Q4 : 0,5 + 0,5 ; Q5 : 0,5.

Exercice 3 – Calcul d'une moyenne

  1. Algorithme Moyenne
    Variables n1, n2, n3, moy : Réel
    Début
        Écrire("Donner les trois notes :")
        Lire(n1, n2, n3)
        moy ← (2 * n1 + 3 * n2 + n3) / 6
        Écrire("Moyenne = ", moy)
        Si moy ≥ 10 Alors
            Écrire("Admis")
        Sinon
            Écrire("Non admis")
        FinSi
    Fin
  2. moy = (2 × 12 + 3 × 8 + 15)/6 = (24 + 24 + 15)/6 = 63/6 = 10,5. Comme 10,5 ≥ 10, l'algorithme affiche « Admis ».

Détail de la question 1 : déclarations, lecture, calcul de la moyenne avec la somme des coefficients, structure Si…Alors…Sinon et affichages.

Barème : Q1 : 0,5 + 0,5 + 1 + 1,5 ; Q2 : 1 + 0,5.

Exercice 4 – Structure conditionnelle : remise sur un achat

  1. 1200 DH : remise 10 % = 120 DH, à payer 1080 DH.
    700 DH : remise 5 % = 35 DH, à payer 665 DH.
    300 DH : aucune remise, à payer 300 DH.
  2. Algorithme Remise
    Variables montant, taux, remise, apayer : Réel
    Début
        Lire(montant)
        Si montant ≥ 1000 Alors
            taux ← 0,10
        Sinon
            Si montant ≥ 500 Alors
                taux ← 0,05
            Sinon
                taux ← 0
            FinSi
        FinSi
        remise ← montant * taux
        apayer ← montant − remise
        Écrire("Remise : ", remise, " ; à payer : ", apayer)
    Fin
  3. Avec « montant > 1000 », un achat de 1000 DH ne vérifie pas la première condition mais vérifie la seconde (1000 ≥ 500) : l'algorithme applique 5 % et affiche 950 DH, alors qu'il devrait appliquer 10 % et afficher 900 DH. Correction : « Si montant ≥ 1000 Alors ».

Détail de la question 2 : déclarations, lecture, conditions imbriquées correctes, calcul et affichage.

Barème : Q1 : 0,5 + 0,5 + 0,5 ; Q2 : 0,5 + 0,5 + 1,5 + 0,5 ; Q3 : 0,75 + 0,75.

Barème

Exercice 1 – Notions de base4 pts
Exercice 2 – Exécution manuelle d'algorithmes5 pts
Exercice 3 – Calcul d'une moyenne5 pts
Exercice 4 – Structure conditionnelle : remise sur un achat6 pts
Total20 pts

Conseils de révision

  • Dans une affectation « x ← expression », on calcule d'abord l'expression, puis on range le résultat dans x.
  • div donne le quotient entier, mod donne le reste.
  • Faire un tableau d'exécution ligne par ligne pour suivre les valeurs des variables.
  • Tester un algorithme avec les valeurs limites (ici 500 et 1000) pour vérifier les conditions ≥ et >.

Autres devoirs de Informatique – Tronc commun scientifique

Liens utiles

Utile ? Envoyez-le à quelqu'un qui cherche
WhatsApp Facebook Telegram
📲
Installez Wadifa Info sur votre iPhone : appuyez sur le bouton Partager en bas de Safari, puis sur Sur l'écran d'accueil. Les nouveaux concours, sans passer par le navigateur.