while_statement
::=
"while" "(" expression ")" statement
This rule is called by-> statement
Explicationsboolean et qu'il n'est pas possible d'utiliser un
entier, comme on le ferait en C.
while (condition) {
instruction1;
instruction2;
...
}
Exemple
class exSimple2 {
public static void main(String args[]) {
int a = 3458;
int diviseur = 133;
System.out.println("cherchons le premier multiple de "+diviseur+" plus grand ou egal a "+a);
int fact = a;
while ((fact % diviseur) != 0) {
fact++;
}
System.out.println("c'est "+fact);
System.out.println("\net le premier multiple de "+diviseur+" plus grand que "+a);
fact = a;
do {
fact++;
} while ((fact % diviseur) != 0);
System.out.println("c'est "+fact);
}
}
Exécution
cherchons le premier multiple de 133 plus grand ou egal a 3458
c'est 3458
et le premier multiple de 133 plus grand que 3458
c'est 3591
Attention !while
avec celle de la boucle do.
En particulier, si l'on place un point-virgule après la condition d'une
boucle while, le corps ne sera exécuté qu'une seule fois.