import java.util.Scanner; public class LesBoucles { static int saisirValider(int b1, int b2) { boolean valide = true; Scanner clavier = new Scanner(System.in); int n ; do { System.out.printf("Entrez un nombre entre %d et %d ", b1, b2); n = clavier.nextInt(); valide = n >= b1 && n <= b2; if (!valide) System.out.printf("Valeur hors intervalles, retapez SVP\n"); } while (!valide); return n; } static int avecFor(int nombre) { int somme = 0; for(int i = 1; i <= nombre; i++) somme += i ; return somme; } static int avecWhile(int nombre) { int somme = 0, valeur = 1; while (valeur <= nombre) somme += valeur++ ; return somme; } static int avecDoWhile(int nombre) { int somme = 0, valeur = 1; do { somme += valeur ; valeur++; } while (valeur <= nombre) ; return somme; } public static void main(String[] args) { final int BORNE1 = 50, BORNE2 = 60; int nombre = saisirValider(BORNE1, BORNE2); System.out.printf("Solution avec une formule mathematique : %d\n", nombre * (nombre + 1) / 2); System.out.printf("Solution avec la boucle for : %d\n", avecFor(nombre)); System.out.printf("Solution avec la boucle while : %d\n", avecWhile(nombre)); System.out.printf("Solution avec la boucle do ... while : %d\n", avecDoWhile(nombre)); } } /* Exécution : --------------------Configuration: -------------------- Entrez un nombre entre 50 et 60 49 Valeur hors intervalles, retapez SVP Entrez un nombre entre 50 et 60 67 Valeur hors intervalles, retapez SVP Entrez un nombre entre 50 et 60 57 Solution avec une formule mathematique : 1653 Solution avec la boucle for : 1653 Solution avec la boucle while : 1653 Solution avec la boucle do ... while : 1653 Process completed. */