Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Maîtriser les instructions conditionnelles C++ : if, if...else et if...else imbriqué expliqués

C++ if, if...else et if...else imbriqué

Dans ce tutoriel, nous apprendrons l'instruction if...else pour créer des programmes de prise de décision avec l'aide d'exemples.

En programmation informatique, nous utilisons l'instruction if...else pour exécuter un bloc de code sous certaines conditions et un autre bloc sous d'autres conditions.

Par exemple, assigner des notes (A, B, C) basées sur les notes obtenues par un étudiant.


Il y a trois formes d'instructions if...else en C++.

  1. if instruction
  2. if...else instruction
  3. if...else if...else instruction

Instruction if C++

La syntaxe de l'instruction if est :

if (condition) {
    // corps de l'instruction if
}

L'instruction if évalue la condition à l'intérieur des parenthèses ( ).

Note : Le code à l'intérieur de { } est le corps de l'instruction if.

Maîtriser les instructions conditionnelles C++ : if, if...else et if...else imbriqué expliqués

Exemple 1 : Instruction if C++

// Programme pour afficher un nombre positif entré par l'utilisateur
// Si l'utilisateur entre un nombre négatif, il est ignoré
#include <iostream>
using namespace std;
int main() {
    int nombre;
    cout << "Entrez un entier : ";
    cin >> nombre;
    // vérifie si le nombre est positif
    if (nombre > 0) {
        cout << "Vous avez entré un entier positif : " << nombre << endl;
    }
    cout << "Cette instruction est toujours exécutée.";
    return 0;
}

Sortie 1

Entrez un entier : 5
Vous avez entré un entier positif : 5
Cette instruction est toujours exécutée.

Quand l'utilisateur entre 5, la condition nombre > 0 est évaluée à true et l'instruction à l'intérieur du corps de if est exécutée.

Sortie 2

Entrez un nombre : -5
Cette instruction est toujours exécutée.

Quand l'utilisateur entre -5, la condition nombre > 0 est évaluée à false et l'instruction à l'intérieur du corps de if n'est pas exécutée.


C++ if...else

L'instruction if peut avoir une clause else optionnelle. Sa syntaxe est :

if (condition) {
    // bloc de code si la condition est vraie
} else {
    // bloc de code si la condition est fausse
}

L'instruction if..else évalue la condition à l'intérieur de la parenthèse.

Maîtriser les instructions conditionnelles C++ : if, if...else et if...else imbriqué expliqués

Si la condition évalue true,

Si la condition évalue false,


Exemple 2 : Instruction if...else C++

// Programme pour vérifier si un entier est positif ou négatif
// Ce programme considère 0 comme un nombre positif
#include <iostream>
using namespace std;
int main() {
    int nombre;
    cout << "Entrez un entier : ";
    cin >> nombre;
    if (nombre >= 0) {
        cout << "Vous avez entré un entier positif : " << nombre << endl;
    } else {
        cout << "Vous avez entré un entier négatif : " << nombre << endl;
    }
    cout << "Cette ligne est toujours affichée.";
    return 0;
}

Sortie 1

Entrez un entier : 4
Vous avez entré un entier positif : 4.
Cette ligne est toujours affichée.

Dans le programme ci-dessus, nous avons la condition nombre >= 0. Si nous entrons un nombre supérieur ou égal à 0, alors la condition évalue true.

Ici, nous entrons 4. Donc, la condition est true. Donc, l'instruction à l'intérieur du corps de if est exécutée.

Sortie 2

Entrez un entier : -4
Vous avez entré un entier négatif : -4.
Cette ligne est toujours affichée.

Ici, nous entrons -4. Donc, la condition est false. Donc, l'instruction à l'intérieur du corps de else est exécutée.


C++ if...else...else if

L'instruction if...else est utilisée pour exécuter un bloc de code parmi deux alternatives. Cependant, si nous devons faire un choix entre plus de deux alternatives, nous utilisons l'instruction if...else if...else.

La syntaxe de l'instruction if...else if...else est :

if (condition1) {
    // bloc de code 1
} else if (condition2) {
    // bloc de code 2
} else {
    // bloc de code 3
}

Ici,

Maîtriser les instructions conditionnelles C++ : if, if...else et if...else imbriqué expliqués

Note : Il peut y avoir plus d'une instruction else if mais seulement une instruction if et else.


Exemple 3 : C++ if...else...else if

// Programme pour vérifier si un entier est positif, négatif ou zéro
#include <iostream>
using namespace std;
int main() {
    int nombre;
    cout << "Entrez un entier : ";
    cin >> nombre;
    if (nombre > 0) {
        cout << "Vous avez entré un entier positif : " << nombre << endl;
    } else if (nombre < 0) {
        cout << "Vous avez entré un entier négatif : " << nombre << endl;
    } else {
        cout << "Vous avez entré 0." << endl;
    }
    cout << "Cette ligne est toujours affichée.";
    return 0;
}

Sortie 1

Entrez un entier : 1
Vous avez entré un entier positif : 1.
Cette ligne est toujours affichée.

Sortie 2

Entrez un entier : -2
Vous avez entré un entier négatif : -2.
Cette ligne est toujours affichée.

Sortie 3

Entrez un entier : 0
Vous avez entré 0.
Cette ligne est toujours affichée.

Dans ce programme, nous prenons un nombre de l'utilisateur. Nous utilisons ensuite l'échelle if...else if...else pour vérifier si le nombre est positif, négatif ou zéro.

Si le nombre est plus grand que 0, le code à l'intérieur du bloc if est exécuté. Si le nombre est plus petit que 0, le code à l'intérieur du bloc else if est exécuté. Sinon, le code à l'intérieur du bloc else est exécuté.


C++ if...else imbriqué

Parfois, nous devons utiliser une instruction if à l'intérieur d'une autre instruction if. C'est ce qu'on appelle une instruction if imbriquée.

Considérez-le comme plusieurs couches d'instructions if. Il y a une première instruction if externe, et à l'intérieur se trouve une autre instruction if interne. Sa syntaxe est :

// instruction if externe
if (condition1) {
    // instructions
    // instruction if interne
    if (condition2) {
        // instructions
    }
}

Notes :


Exemple 4 : C++ if imbriqué

// Programme C++ pour trouver si un entier est positif, négatif ou zéro
// en utilisant des instructions if imbriquées
#include <iostream>
using namespace std;
int main() {
    int num;
    cout << "Entrez un entier : ";
    cin >> num;
    // condition if externe
    if (num != 0) {
        // condition if interne
        if (num > 0) {
            cout << "Le nombre est positif." << endl;
        }
        // condition else interne
        else {
            cout << "Le nombre est négatif." << endl;
        }
    }
    // condition else externe
    else {
        cout << "Le nombre est 0 et il n'est ni positif ni négatif." << endl;
    }
    cout << "Cette ligne est toujours affichée." << endl;
    return 0;
}

Sortie 1

Entrez un entier : 35
Le nombre est positif.
Cette ligne est toujours affichée.

Sortie 2

Entrez un entier : -35
Le nombre est négatif.
Cette ligne est toujours affichée.

Sortie 3

Entrez un entier : 0
Le nombre est 0 et il n'est ni positif ni négatif.
Cette ligne est toujours affichée.

Dans l'exemple ci-dessus,

Note : Comme vous pouvez le voir, les if...else imbriqués compliquent votre logique. Si possible, vous devriez toujours essayer d'éviter les if...else imbriqués.


Corps de if...else avec une seule instruction

Si le corps de if...else n'a qu'une seule instruction, vous pouvez omettre { } dans le programme. Par exemple, vous pouvez remplacer

int nombre = 5;
if (nombre > 0) {
    cout << "Le nombre est positif." << endl;
} else {
    cout << "Le nombre est négatif." << endl;
}

par

int nombre = 5;
if (nombre > 0) cout << "Le nombre est positif." << endl;
else cout << "Le nombre est négatif." << endl;

La sortie des deux programmes sera la même.

Note : Bien qu'il ne soit pas nécessaire d'utiliser { } si le corps de if...else n'a qu'une seule instruction, utiliser { } rend votre code plus lisible.


Plus sur la prise de décision

Dans certaines situations, un opérateur ternaire peut remplacer une instruction if...else. Pour en savoir plus, visitez l'opérateur ternaire C++.

Si nous devons faire un choix entre plus d'une alternative basée sur une condition de test donnée, l'instruction switch peut être utilisée. Pour en savoir plus, visitez C++ switch.


Consultez ces exemples pour en apprendre davantage :

Programme C++ pour vérifier si un nombre est pair ou impair

Programme C++ pour vérifier si un caractère est une voyelle ou une consonne.

Programme C++ pour trouver le plus grand nombre parmi trois nombres

Langue C

  1. Classes et objets C++ : Guide pratique de la programmation orientée objet
  2. Maîtriser la gestion de mémoire en C++ : Utilisation experte de new et delete
  3. Maîtriser l'héritage C++ : Public, Protected et Private expliqués
  4. Fonctions amies et classes amies en C++ : Maîtriser le contrôle d'accès
  5. Instructions, indentation et commentaires en Python : Guide clair
  6. Maîtriser les classes imbriquées et internes en Java : types, exemples et bonnes pratiques
  7. Guide complet sur la date et l'heure en C++
  8. Maîtriser la surcharge en C++ : Fonctions et opérateurs expliqués
  9. Maîtriser les entrées/sorties fichier en C++ : Lecture et écriture avec fstream