← algo
TD 5 · Conditions

Conditions & branchements

Sept algorithmes où vous bougez les valeurs : déplacez les curseurs et regardez l'organigramme, la courbe ou la facture réagir en direct, tandis que le pseudo-code s'allume sur la branche empruntée.

Exercice 1
★★

Pair ou impair

Énoncé

Demander un entier et afficher s'il est pair ou impair.

Organigramme
Lire(n) — n = 7
n mod 2 = 0 ? → 1
Vrai
PAIR
Faux
IMPAIR
7 est impair
Pair ou impair
1Lire(n)
2Si n mod 2 = 0 alors
3 Écrire("pair")
4Sinon
5 Écrire("impair")
6FinSi
À retenir

Tout repose sur n mod 2 : reste 0 ⟶ pair, reste 1 ⟶ impair.

Exercice 2
★★

Maximum de trois nombres

Énoncé

Lire trois entiers a, b, c et afficher le plus grand.

Trois valeurs, un gagnant
12
a
18
b
9
c
max = 18 (b)
Maximum de trois
1Lire(a, b, c)
2Si a ≥ b alors
3 Si a ≥ c alors max ← a
4 Sinon max ← c
5Sinon
6 Si b ≥ c alors max ← b
7 Sinon max ← c
8Écrire(max)
À retenir

Des Si imbriqués comparent deux à deux. La barre la plus haute remporte — l'algorithme suit exactement le même chemin que votre œil.

Exercice 3
★★

Équation du premier degré

ax + b = 0

Énoncé

Résoudre dans ℝ l'équation ax + b = 0 (a et b réels), en distinguant les cas particuliers.

Droite y = a·x + b
1.50
La solution est l'abscisse où la droite croise l'axe x.
x = -b/a = 1.50
Résolution ax + b = 0
1Lire(a, b)
2Si a ≠ 0 alors
3 x ← -b / a
4Sinon Si b = 0 alors
5 « infinité de solutions »
6Sinon
7 « aucune solution »
À retenir

Si a ≠ 0, la droite croise l'axe x en x = -b/a. Si a = 0 : soit b = 0 (droite confondue avec l'axe ⟶ infinité), soit pas de solution.

Exercice 4
★★

Facturation des photocopies

Tarif dégressif par paliers

Énoncé

1 DH les 10 premières copies, 0,5 DH les 20 suivantes, 0,2 DH au-delà. Afficher la facture pour un nombre de copies donné.

Décomposition par paliers
10
20
15
1–10 @ 1 DH10 × 1 = 10.0 DH
11–30 @ 0.5 DH20 × 0.5 = 10.0 DH
31+ @ 0.2 DH15 × 0.2 = 3.0 DH
Facture totale23.00 DH
Facture de reprographie
1Lire(n)
2Si n ≤ 10 alors
3 prix ← n × 1
4Sinon Si n ≤ 30 alors
5 prix ← 10×1 + (n-10)×0.5
6Sinon
7 prix ← 10×1 + 20×0.5 + (n-30)×0.2
À retenir

Chaque palier ne s'applique qu'à sa tranche : on cumule 10×1 + 20×0.5 + (n−30)×0.2. Le test en cascade choisit jusqu'où aller.

Exercice 5
★★

Imposable ou non ?

Selon le sexe et l'âge

Énoncé

Les hommes de plus de 20 ans paient l'impôt ; les femmes le paient si elles ont entre 18 et 35 ans ; les autres non. Demander âge et sexe, puis conclure.

Arbre de décision
sexe ?
Homme
age > 20 ?
Femme
18 ≤ age ≤ 35 ?
IMPOSABLE
Règles d'imposition
1Lire(sexe, age)
2Si sexe = 'H' alors
3 imposable ← (age > 20)
4Sinon
5 imposable ← (18 ≤ age ≤ 35)
6FinSi
À retenir

Un premier Si sépare selon le sexe, un second teste l'âge. Le chemin suivi dans l'arbre détermine le verdict.

Exercice 6
★★★

Équation du second degré

ax² + bx + c = 0 et le discriminant

Énoncé

Afficher la ou les solutions d'une équation ax² + bx + c = 0.

Parabole y = a·x² + b·x + c
-1.002.00
Δ = b² − 4ac = 9.00
2 racines : -1.00 et 2.00
Résolution ax² + bx + c = 0
1Lire(a, b, c)
2Δ ← b×b - 4×a×c
3Si Δ > 0 alors → deux racines
4Sinon Si Δ = 0 → une racine double
5Sinon → aucune racine réelle
À retenir

Le signe du discriminant Δ = b² − 4ac donne le nombre de racines : deux si Δ > 0, une double si Δ = 0, aucune réelle si Δ < 0 — exactement le nombre de fois où la parabole croise l'axe x.

Exercice 7
★★

Remise au supermarché

1 % entre 300 et 500, 2 % au-delà

Énoncé

Remise de 1 % sur un achat compris entre 300 et 500 DH, 2 % au-delà de 500 DH. Après lecture du montant, afficher le montant à payer.

Montant → remise → à payer
300
500
montant420 DH
palier de remise1 %
remise4.20 DH
à payer415.80 DH
Remise à la caisse
1Lire(montant)
2Si montant > 500 alors
3 remise ← 2 %
4Sinon Si montant ≥ 300 alors
5 remise ← 1 %
6Sinon
7 remise ← 0 %
8payer ← montant × (1 - remise)
À retenir

Trois zones séparées par deux seuils. On teste d'abord le seuil le plus haut pour ne pas « rater » la meilleure remise.