Instructions If en programmation
Les instructions If permettent à votre programme de prendre des décisions, il peut donc faire différentes choses en fonction de la situation.
Qu'est-ce qu'une instruction If ?
Une instruction if exécute un bloc de code si la condition est vraie.
Nous faisons des choses similaires dans la vie réelle, comme utiliser un parapluie s'il pleut ou porter un manteau s'il fait froid.
Voyez comment fonctionne une instruction if dans le jeu simple ci-dessous. Le but est d'obtenir 6 au lancer de dés.
Pour que le jeu fasse quelque chose de différent en fonction du résultat du dé, nous utilisons if avec une condition qui vérifie si le résultat du dé est 6.
Si la condition est vraie, nous affichons « Vous avez obtenu 6 !» et lançons les confettis. Si la condition est fausse, nous affichons « Réessayer ».
Voici l'organigramme et le code Python du jeu :
Nous devons utiliser else dans le code ci-dessus, pour gérer le cas où le dé n'est pas 6, afin que nous puissions écrire « Réessayer ».
Cliquez sur le bouton « Exécuter l'exemple » ci-dessous pour voir le code de lancer de dés en action.
Python:
dice = random.randint(1,6)
print('You rolled a ' + str(dice))
if dice == 6:
print('You got 6!🥳')
else:
print('Try again')
JavaScript:
const dice = Math.floor(Math.random() * 6) + 1;
console.log('You rolled a ' + dice);
if (dice == 6) {
console.log('You got 6!🥳');
} else {
console.log('Try again');
}
Java:
int dice = random.nextInt(6) + 1;
System.out.println("You rolled a " + dice);
if (dice == 6) {
System.out.println("You got 6!🥳");
} else {
System.out.println("Try again");
}
C++:
int dice = rand() % 6 + 1;
cout << "You rolled a " + to_string(dice) + "\\n";
if (dice == 6) {
cout << "You got 6!🥳\\n";
} else {
cout << "Try again\\n";
}
Run Example »
Quand dois-je utiliser une instruction If ?
Lorsque vous souhaitez que votre programme fasse quelque chose de différent en fonction de la situation, vous devez utiliser une instruction if.
Par exemple, si vous souhaitez que votre programme affiche « Bienvenue ! » lorsque l'utilisateur saisit le mot de passe correct et « Accès refusé » lorsque l'utilisateur saisit le mauvais mot de passe, vous devez utiliser une instruction if.
If, Else et Else If
Une instruction if commence toujours par un if.
Une instruction if peut contenir zéro ou plusieurs else if, et zéro ou un else.
Lorsque else est présent, il doit venir en dernier, après tout else if.
L'instruction else garantit qu'un (et un seul) des blocs de code s'exécutera.
Parfois, il suffit d'utiliser un seul si, comme ceci :
Python:
age = 32
print('Age: ' + str(age))
if age > 17:
print('You are an adult!')
JavaScript:
const age = 32;
console.log('Age: ' + age);
if (age > 17) {
console.log('You are an adult!');
}
Java:
int age = 32;
System.out.println("Age: " + age);
if (age > 17) {
System.out.println("You are an adult!");
}
C++:
int age = 32;
cout << "Age: " + to_string(age) + "\\n";
if (age > 17) {
cout << "You are an adult!\\n";
}
Run Example »
Mais généralement, nous voulons également gérer le cas où la condition n'est pas vraie, nous utilisons donc une instruction else pour cela.
Python:
age = 10
print('Age: ' + str(age))
if age > 17:
print('You are an adult!')
else:
print('You are not an adult yet.')
JavaScript:
const age = 10;
console.log('Age: ' + age);
if (age > 17) {
console.log('You are an adult!');
} else {
console.log('You are not an adult yet.');
}
Java:
int age = 10;
System.out.println("Age: " + age);
if (age > 17) {
System.out.println("You are an adult!");
} else {
System.out.println("You are not an adult yet.");
}
C++:
int age = 10;
cout << "Age: " + to_string(age) + "\\n";
if (age > 17) {
cout << "You are an adult!\\n";
} else {
cout << "You are not an adult yet.\\n";
}
Run Example »
Le bloc de code qui appartient au else ne sera exécuté que si la condition dans le if est fausse.
Nous pouvons également utiliser else if pour vérifier plusieurs conditions, afin d'obtenir plus de deux résultats.
Python:
age = 15
print('Age: ' + str(age))
if age < 13:
print('You are a child')
elif age < 20:
print('You are a teenager')
else:
print('You are an adult')
JavaScript:
const age = 15;
console.log('Age: ' + age);
if (age < 13) {
console.log('You are a child');
} else if (age < 20) {
console.log('You are a teenager');
} else {
console.log('You are an adult');
}
Java:
int age = 15;
System.out.println("Age: " + age);
if (age < 13) {
System.out.println("You are a child");
} else if (age < 20) {
System.out.println("You are a teenager");
} else {
System.out.println("You are an adult");
}
C++:
int age = 15;
cout << "Age: " + to_string(age) + "\\n";
if (age < 13) {
cout << "You are a child";
} else if (age < 20) {
cout << "You are a teenager";
} else {
cout << "You are an adult";
}
Run Example »
Vous ne pouvez avoir qu'une seule instruction if et qu'une seule instruction else, mais vous pouvez avoir autant d'instructions else if que vous le souhaitez.
De plus, le if est toujours le premier, le else est toujours le dernier et les instructions else if sont entre les deux.
Instructions If imbriquées
Une instruction if imbriquée est une instruction if à l'intérieur d'une autre instruction if.
Les instructions if imbriquées sont utiles dans les cas où vous souhaitez vérifier une condition, uniquement si une autre condition est vraie.
Python:
age = 19
print('Age: ' + str(age))
if age < 13:
print('You are a child')
elif age < 20:
print('You are a teenager')
if age > 17:
print('and an adult!')
else:
print('You are an adult')
JavaScript:
const age = 19;
console.log('Age: ' + age);
if (age < 13) {
console.log('You are a child');
} else if (age < 20) {
console.log('You are a teenager');
if (age > 17) {
console.log('and an adult!');
}
} else {
console.log('You are an adult');
}
Java:
int age = 19;
System.out.println("Age: " + age);
if (age < 13) {
System.out.println("You are a child");
} else if (age < 20) {
System.out.println("You are a teenager");
if (age > 17) {
System.out.println("and an adult!");
}
} else {
System.out.println("You are an adult");
}
C++:
int age = 19;
cout << "Age: " + to_string(age) + "\n";
if (age < 13) {
cout << "You are a child";
} else if (age < 20) {
cout << "You are a teenager";
if (age > 17) {
cout << "\nand an adult!";
}
} else {
cout << "You are an adult";
}
Run Example »
Dans le code ci-dessus, l'instruction if imbriquée nous permet de filtrer le cas particulier des 18 et 19 ans, lorsque vous êtes à la fois adolescent et adulte.
Age
Dans l'organigramme ci-dessus, nous pouvons voir que le bloc de code pour age > 17 n'est exécuté que si age est 18 ou 19.
