ENSEIGNANT:
MR. BEN HSSINE
SERIE DE REVSION DC2
CLASSE :
2ÈME TI 1
Nom & Prénom : ……………………………………………… N° : …. Classe : 2TI …
/20
Afin de réaliser les tâches décrites dans la première colonne du tableau suivant, un élève fournit pour
chaque tâche, une proposition dans la deuxième colonne du tableau. Deux cas peuvent se présenter :
➢ La proposition de l’élève est correcte mais la boucle utilisée n’est pas la plus adéquate ;
➢ Le choix de la boucle est correct, mais la solution proposée contient une(des) erreur(s) à corriger.
Pour chaque proposition, mettre une croix dans la colonne "type erreur" dans la case correspondante
(boucle non adéquate ou erreurs dans l’algorithme) puis proposer une solution correcte :
Type erreur
Boucle Erreurs
Tâche Proposition de l’élève Solution
non dans
adéquate l’algorithme
Inverser le x ← "" …………………………………………..
contenu d’une pour i de 0 à long(ch) faire …………………………………………..
variable (chaine x ←x + ch[i]
de caractères) ch …………………………………………..
fin pour
dans une …………………………………………..
variable (chaine …………………………………………..
de caractères) x.
Calculer dans p←1 …………………………………………..
une variable p le i←0 …………………………………………..
résultat de a à la répéter
puissance b (ab), …………………………………………..
p←p*a
sachant que : …………………………………………..
i←i+1
ab = a*a*….*a
jusqu’à (i = b) …………………………………………..
(b fois) …………………………………………..
…………………………………………..
Déterminer dans nb ← 0 …………………………………………..
une variable nb pour i de 2 à (n div 2) faire …………………………………………..
le nombre de si (n mod i = 0) alors
diviseurs d’un …………………………………………..
nb ← nb + 1
entier naturel n. fin si …………………………………………..
fin pour …………………………………………..
…………………………………………..
Calculer dans s←0 …………………………………………..
une variable s la tant que (n ≠ 0) faire …………………………………………..
somme des s ← s + (n mod 10)
chiffres d’un …………………………………………..
fin tant que
entier naturel …………………………………………..
non nul n. …………………………………………..
1
Soit l’algorithme suivant :
Algorithme inconnu
Début On vous demande de répondre aux questions
lire(c) suivantes en s’appuyant sur l’algorithme
lire(ch) inconnu :
l ← long(ch) 1) Quel sera le résultat de cet algorithme
pour ces valeurs ? ( /1,5pts)
i←0
c = "m" ch = "mohamed" ➔ p= ………..
p ← -1
c = "x" ch = "bonjour" ➔ p= ………..
tant que i < l faire
c= "n" ch = "python" ➔ p= ………..
si c = ch[i] alors 2) En déduire le rôle de cet algorithme :
p←i ( /1pt)
i←l Cet algorithme permet de .…………………….
sinon …………………………………………………
i←i+1 …………………………………………………
fin si 3) Donner la fonction prédéfinie qui réalise
fin tant que ce même traitement : (en algorithme)
écrire ("… .................................................................",p) ( /0,5pt)
fin. …………………………………………………
Un club de programmation décide de recruter des programmeurs selon leurs scores obtenus après une
suite d’examens comme présenté dans l’algorithme suivant :
Algorithme Recrutement
Début 1) Apporter les modifications nécessaires à la partie #saisie
#saisie : pour que le score soit un nombre compris entre 50 et 200
Écrire ("Donner le score du programmeur") #saisie : ( /1pt)
Lire (score) ……………….………………………………….……………
Écrire ("Donner son âge") ……………….………………………………….……………
Lire (a) ……………….………………………………….……………
#traitements : 2) Compléter la partie #Bonus Score comme suit :
#Bonus score : score = score + 50 si l’âge 35 <= a <= 40
……………………………………………. score = score + 70 si l’âge 25 <= a < 35
#Décision : #Bonus score : ( /1,5pts)
Si score ∈[150..200] alors ……………….……………...………………….………….
res ← "Recruté" ……………….…………………...…………….………….
sinon si score ∈[100..149] alors ……………….………………………………….…………
res ← "Liste d’attente" ……………….………………………………….…………
Sinon ……………….…………………………….………………
res ← "Non recruté" 3) Sachant que score est une variable de type entier, peut-
Fin si on écrire la partie #Décision autrement ? Si oui,
#affichage des résultats : qu’appelle-t-on cette structure ? ( /0,5pts)
Écrire (res) ……………….…………………………….………………
Fin ……………….…………………………….………………
2
4) Si votre réponse à la question 3) était "oui", Réécrire la partie #Décision en utilisant la structure choisie :
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
Un entier N est dit équilibré si le nombre de ses chiffres pairs est égal au nombre de ses chiffres impairs.
Exemples :
• 10234538 est un nombre équilibré car il contient 4 chiffres pairs et 4 chiffres impairs.
• 1356 n’est pas un nombre équilibré car il contient 1 chiffre pair et 3 chiffres impairs.
• 2017 est un nombre équilibré car il contient 2 chiffres pairs et 2 chiffres impairs.
On vous demande d’écrire un algorithme d’un programme nommé "nombre_equilibre" permettant de
saisir un nombre N composé au minimum par 6 chiffres puis vérifier et afficher si ce nombre est équilibré ou
non. N’oubliez pas le TDO !
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………
……………………………………………………………………………………………………………………