Exercices corrigés pour maîtriser la structure de controlée if-else

31 Jan 2020 31 Jan 2020 62466 vues ESSADDOUKI Mostafa 22 min de lecture

Les programmes que nous avons écrits jusqu'ici s'exécutent de manière séquentielle. Dans le monde réel, on a souvent besoin d'exécuter certaines instructions uniquement quand des conditions sont remplies. C'est le rôle des instructions de contrôle.

Instruction conditionnelle if-else if-else permet d'exécuter un bloc d'instructions si une condition est vraie, et un autre bloc sinon. Elle s'appuie sur les opérateurs relationnels (>, <, ==, !=, >=, <=) et les opérateurs logiques (&& / and, || / or, ! / not).
   
Syntaxe générale — if / else if / else C
if (condition1) {
    /* bloc exécuté si condition1 est vraie */
} else if (condition2) {
    /* bloc exécuté si condition2 est vraie */
} else {
    /* bloc exécuté si aucune condition n'est vraie */
}
Conseil avant de commencer Pour chaque exercice, identifiez d'abord toutes les conditions possibles avant d'écrire le code. Dessinez un arbre de décision si nécessaire.

Exercice 1 — Maximum de trois nombres

 Exercice

Trouver le maximum parmi trois nombres

 Niveau : Débutant

Écrire un programme qui lit trois entiers et affiche le plus grand des trois, en utilisant des if-else imbriqués.

Exemple
Entrée
17 12 16
Sortie
Le maximum est : 17
Explication : 17 > 12 → on compare 17 à 16 → 17 > 16, donc max = 17.

Exercice 2 — Divisibilité par 3 et 13

 Exercice

Vérifier la divisibilité par 3 et 13

 Niveau : Débutant

Écrire un programme qui lit un entier et vérifie s'il est divisible à la fois par 3 et par 13.

Exemple
Entrée
117
Sortie
117 est divisible par 3 et 13
Explication : 117 ÷ 3 = 39 (reste 0) et 117 ÷ 13 = 9 (reste 0) → les deux conditions sont vraies.

Exercice 3 — Nombre pair ou impair

 Exercice

Vérifier si un nombre est pair ou impair

 Niveau : Débutant

Écrire un programme qui lit un entier et détermine s'il est pair ou impair.

Exemple
Entrée
14
Sortie
14 est un nombre pair.
Explication : 14 % 2 = 0 → pair.

Exercice 4 — Voyelle ou consonne

 Exercice

Identifier voyelle, consonne ou caractère spécial

 Niveau : Débutant

Écrire un programme qui lit un caractère et détermine s'il s'agit d'une voyelle, d'une consonne ou d'un caractère spécial.

Les voyelles sont : a, e, i, o, u (minuscules et majuscules).

Exemple 1 — Voyelle
Entrée
e
Sortie
'e' est une voyelle.
Exemple 2 — Consonne
Entrée
b
Sortie
'b' est une consonne.

Exercice 5 — Jour de la semaine

 Exercice

Afficher le nom du jour selon son numéro (1–7)

 Niveau : Débutant

Écrire un programme qui lit un entier entre 1 et 7 et affiche le nom du jour correspondant. Tout autre entier est une entrée invalide.

Exemple
Entrée
3
Sortie
Mercredi
Explication : Le 3ème jour de la semaine est Mercredi.
Contraintes
  • 1 ≤ numéro ≤ 7

Exercice 6 — Nombre de jours dans un mois

 Exercice

Afficher le nombre de jours d'un mois (1–12)

 Niveau : Débutant

Écrire un programme qui lit un numéro de mois (1–12) et affiche le nombre de jours correspondant selon le tableau ci-dessous.

MoisNombre de jours
Janvier, Mars, Mai, Juillet, Août, Octobre, Décembre31 jours
Février28 ou 29 jours
Avril, Juin, Septembre, Novembre30 jours
Exemple
Entrée
7
Sortie
31 jours
Explication : Le mois 7 (Juillet) a 31 jours.

Exercice 7 — Racines d'une équation quadratique

 Exercice

Résoudre ax² + bx + c = 0

 Niveau : Intermédiaire

Écrire un programme qui lit les coefficients a, b, c d'une équation quadratique \(ax^2 + bx + c = 0\) et affiche ses racines.

Le discriminant est : \(\Delta = b^2 - 4ac\)

  • Si \(\Delta > 0\) : deux racines réelles distinctes \(\dfrac{-b \pm \sqrt{\Delta}}{2a}\)
  • Si \(\Delta = 0\) : une racine double \(\dfrac{-b}{2a}\)
  • Si \(\Delta < 0\) : deux racines complexes \(\dfrac{-b}{2a} \pm i\,\dfrac{\sqrt{-\Delta}}{2a}\)
Exemple 1 — Δ > 0
Entrée
1 -5 6
Sortie
Deux racines réelles distinctes : 3.0000 et 2.0000
Explication : Δ = 25 − 24 = 1 > 0 → r1 = (5+1)/2 = 3, r2 = (5−1)/2 = 2.
Exemple 2 — Δ < 0
Entrée
2 3 2
Sortie
Deux racines complexes : -0.7500 + i*0.6614 et -0.7500 - i*0.6614
Explication : Δ = 9 − 16 = −7 < 0 → racines complexes.

Exercice 8 — Profit ou perte

 Exercice

Calculer le profit ou la perte d'une vente

 Niveau : Débutant

Écrire un programme qui lit le prix de fabrication et le prix de vente d'un produit, puis affiche le profit, la perte ou l'équilibre.

  • Si prix de vente > prix de fabrication → Profit
  • Si prix de fabrication > prix de vente → Perte
  • Sinon → Ni profit ni perte
Exemple
Entrée
13
11
Sortie
Perte  = 2.00
Explication : 13 > 11 → perte = 13 − 11 = 2.

Exercice 9 — Année bissextile

 Exercice

Vérifier si une année est bissextile

 Niveau : Débutant

Écrire un programme qui lit une année et détermine si elle est bissextile (366 jours) ou non (365 jours).

Exemple
Entrée
2020
Sortie
2020 est une année bissextile (366 jours).
Explication : 2020 % 4 = 0 et 2020 % 100 ≠ 0 → condition vraie → bissextile.

Exercice 10 — Type d'un caractère

 Exercice

Lettre, chiffre ou caractère spécial ?

 Niveau : Débutant

Écrire un programme qui lit un caractère et détermine s'il s'agit d'une :

  • Lettre : entre a–z ou A–Z
  • Chiffre : entre 0–9
  • Caractère spécial : tout autre caractère
Exemple 1 — Chiffre
Entrée
4
Sortie
'4' est un chiffre.
Exemple 2 — Caractère spécial
Entrée
@
Sortie
'@' est un caractère spécial.

Récapitulatif — Opérateurs utilisés

OpérateurSignificationC / JavaPythonExemple
Égalitéa est égal à ba == ba == bnb == 0
Différencea différent de ba != ba != bnb != 0
ET logiqueles deux conditions vraies&&anda>0 && b>0
OU logiqueau moins une condition vraie||ora==1 || a==7
NON logiqueinverse la condition!not!(a == b)
Moduloreste de la division%%nb % 2 == 0
Sortie
// La sortie apparaîtra ici…
Prêt · Ctrl+Entrée pour exécuter

Discussion (0)

Soyez le premier à laisser un commentaire !

Laisser un commentaire

Votre commentaire sera visible après modération.