Prise de décisions
La décision de mettre en marche ou non les essuis-glaces est
nue décision ne supposant que deux issues (parfois appelée
décisoion "binaire"). Cela semble restreint comme choix, mais dans
les programmes plus complexes, c'est une multitude de décisions
telles que celle-ci qui interviennent. Voici un petit programme (particulièrement
adapté au fameux "copy-paste-and-run") qui contient une décision
binaire :
import java.io.*;
class NumberTester
{
public static void main (String[] args) throws IOException
{
BufferedReader stdin =
new BufferedReader ( new InputStreamReader( System.in ) );
String inData;
int num;
System.out.print("Entrez un entier : ");
inData = stdin.readLine();
num = Integer.parseInt( inData ); // convertion de inData en int
if ( num < 0 ) // est-ce que num est inférieur à zéro?
System.out.println("Le nombre " + num + " est négatif"); // alternative "true"
else
System.out.println("Le nombre " + num + " est positif"); // alternative "false"
System.out.println("Au revoir !"); // instruction toujours exécutée
}
}
|
Les mots réservés if et else sont des instructions
permettant de séparer une décision en deux alternatives.
Le else est comme une ligne permettant de séparer "l'alternative
true"
de "l'alternative false".
-
L'expression if pose toujours une question (souvent relative à
une ou plusieurs variables).
-
Si la réponse à cette question est vraie "true" seule l'alternative
true est exécutée.
-
Si la réponse à cette question est faux "false" seule
l'alternative false est exécutée.
-
Indépendamment de l'alternative choisie, l'exécution se poursuit
ensuite avec les instructions se trouvant après l'alternative
false.
Remarquez qu'une décision binaire consiste à choisir l'une
de des deux routes, sachant que l'on aboutira au meme endroit ensuite.
La séparation dans la route est provoquée par l'instruction
if,
et les deux voies se rejoignent ensuite,juste après l'alternative
false. |