do_statement

do_statement 
      ::= 
      "do" statement "while" "(" expression ")" ";" 

[rule list]
This rule is called by

-> statement

Explications

Cette boucle est de type répète ... tant-que. En effet, après avoir exécuté le corps de la boucle, on teste la condition. Si celle-ci est vraie, on exécute à nouveau le contenu de la boucle, sinon, on passe à l'instruction suivante. Il ne faut confondre la boucle do avec la boucle while.

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

Index général - Index concepts - Règles BNF
© 1996, DIP Genève, Alexandre Maret & Jacques Guyot
page générée Fri Jun 21 15:40:51 MET DST 1996