Nous allons maintenant étudier une structure fondamentale en programmation le « si …... alors.......sinon........».
L'idée de base est la suivante :
si (condition) { suite_instruction1 } sinon { suite_instruction2 }
Comment cela fonctionne-t-il ?
Si « condition » est true alors « suite_instruction1 » est exécuté et « suite_instruction2 » est ignoré sinon (sous-entendu que « condition » est false) « suite_instruction2 » est exécuté et « suite_instruction1 » est ignoré
Notez l'utilisation de 2 éléments nouveaux :
- les accolades : elles permettent de définir des blocs d'instructions : si « suite_instruction1 » est composé de plusieurs lignes, toutes les lignes situées entre l'accolade ouvrante et l'accolade fermante seront exécutées si, bien évidemment, « condition » renvoie true.
- Le décalage de «suite_instruction1» et de « suite_instruction2» : ce décalage est appelé indentation, il permet de rendre le code plus lisible. Il n'est pas obligatoire en JavaScript, mais fortement conseillé.
Soit le programme suivant :
var a=4;
var b=7;
if (a<b){
document.write('Je suis toto.');
document.write( '<br/>');
document.write( "Je n'aime pas titi.");
}
else {
document.write( 'Je suis titi.');
document.write('<br/>');
document.write( "Je n'aime pas toto.");
}
document.write('<br/>');
document.write( "En revanche, j'aime le JavaScript.");
Notez la présence des guillemets " à la place de l'apostrophe '. Pourquoi d'après vous ?
Quel est le résultat attendu après l’exécution de ce programme ? Vérifiez votre réponse avec Notepad++.
Écrire un programme qui demande l'âge de l'utilisateur. Si l'utilisateur a 18 ans ou plus, le programme devra afficher « Bonjour, vous êtes majeur.». Si l'utilisateur a moins de 18 ans, le programme devra afficher « Bonjour, tu es mineur.»
Un if peut contenir plusieurs conditions, nous aurons alors une structure de la forme :
si (condition1 op_logique condition2 ) { suite_instruction1 } sinon { suite_instruction2 }
« op_logique » étant un opérateur logique.
Nous allons étudier 2 opérateurs logiques : le «ou» (noté en JavaScript ||) et le «et» (noté en JavaScript &&)
Par exemple (condition1 || condition2) est vrai si condition1 est vrai ou condition2 est vrai
Autre exemple (condition1 && condition2) est faux si condition1 est vrai et condition2 est faux
Les résultats peuvent être regroupés dans ce que l'on appelle une table de vérité :
table de vérité pour le ou condition1 condition2 condition1 || condition2 vrai vrai vrai vrai faux vrai faux vrai vrai faux faux faux
table de vérité pour le et condition1 condition2 condition1 && condition2 vrai vrai vrai vrai faux faux faux vrai faux faux faux faux Nous aurons l'occasion d'utiliser ces opérateurs logiques dans la prochaine activité.