1. Additionner des nombres à l'aide d'une whileboucle

Écrivons un programme qui lit les nombres sur le clavier (tant que l'utilisateur saisit quelque chose qui ressemble à un nombre) puis affiche leur somme à l'écran. Voici à quoi ressemblerait le code d'un tel programme (nous ne montrons que le code à l'intérieur de la mainméthode).

Code Explication
Scanner console = new Scanner(System.in);
int sum = 0;
while (console.hasNextInt())
{
   int x = console.nextInt();
   sum = sum + x;
}
System.out.println(sum); 
Créez un Scannerobjet pour lire les données de la console.
Nous allons stocker la somme des nombres dans la sumvariable.
Tant que des nombres sont entrés à partir de la console,

lisez le nombre suivant dans la xvariable.
Ajouter xà la somme des nombres (la sumvariable).

Affichez la somme calculée à l'écran.

2. Trouver le nombre maximum à l'aide d'une whileboucle

Notre deuxième programme lira également les nombres à partir du clavier (tant que l'utilisateur saisit quelque chose qui ressemble à un nombre), mais nous voulons maintenant afficher le plus grand des nombres saisis. Voici à quoi ressemblerait le code d'un tel programme (nous ne montrons que le code à l'intérieur de la mainméthode).

Code Explication
Scanner console = new Scanner(System.in);
int max = 0;
while (console.hasNextInt())
{
   int x = console.nextInt();
   if (x > max)
     max = x;
}
System.out.println(max); 
Créez un Scannerobjet pour lire les données de la console.
La maxvariable stockera le maximum des nombres.
Tant que des nombres sont entrés à partir de la console,

lisez le nombre suivant dans la xvariable.
Comparez xet max. Si xest supérieur à max,
mettez à jour le maximum.

Afficher le nombre maximum à l'écran.

Voici un point intéressant : si tous les nombres saisis au clavier sont négatifs, alors le programme affichera 0. Ce qui est incorrect.

Par conséquent, la valeur initiale de la variable max doit être aussi petite que possible.

Option 1:

Vous pouvez le définir égal à -2,000,000,000(moins deux milliards). Ce n'est pas un mauvais début.

Option 2:

Attribuez la plus petite intvaleur possible. Il y a une constante spéciale pour cela : Integer.MIN_VALUE;

Option 3 :

Mieux encore, initialisez maxavec le premier numéro saisi. C'est la meilleure solution. Mais cela ne fonctionnera que si les conditions de la tâche exigent que l'utilisateur entre au moins un numéro.