1. Sommare i numeri usando un whileciclo

Scriviamo un programma che legga i numeri dalla tastiera (sempre che l'utente inserisca qualcosa che assomigli a un numero) e quindi visualizzi la loro somma sullo schermo. Ecco come apparirebbe il codice di un tale programma (stiamo solo mostrando il codice all'interno del mainmetodo).

Codice Spiegazione
Scanner console = new Scanner(System.in);
int sum = 0;
while (console.hasNextInt())
{
   int x = console.nextInt();
   sum = sum + x;
}
System.out.println(sum); 
Crea un Scanneroggetto per leggere i dati dalla console.
Memorizzeremo la somma dei numeri nella sumvariabile.
Finché i numeri vengono inseriti dalla console,

leggi il numero successivo nella xvariabile.
Aggiungere xalla somma dei numeri (la sumvariabile).

Visualizza la somma calcolata sullo schermo.

2. Trovare il numero massimo usando un whileciclo

Anche il nostro secondo programma leggerà i numeri dalla tastiera (purché l'utente inserisca qualcosa di simile a un numero), ma ora vogliamo visualizzare il più grande dei numeri inseriti. Ecco come apparirebbe il codice di un tale programma (stiamo solo mostrando il codice all'interno del mainmetodo).

Codice Spiegazione
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); 
Crea un Scanneroggetto per leggere i dati dalla console.
La maxvariabile memorizzerà il massimo dei numeri.
Finché i numeri vengono inseriti dalla console,

leggi il numero successivo nella xvariabile.
Confronta xe max. Se xè maggiore di max,
aggiorna il massimo.

Visualizza il numero massimo sullo schermo.

Ecco un punto interessante: se tutti i numeri inseriti dalla tastiera sono negativi, il programma visualizzerà 0. Il che non è corretto.

Di conseguenza, il valore iniziale della variabile max dovrebbe essere il più piccolo possibile.

Opzione 1:

Puoi impostarlo uguale a -2,000,000,000(negativo due miliardi). Questo non è un brutto inizio.

Opzione 2:

Assegna il intvalore più piccolo possibile. C'è una costante speciale per questo: Integer.MIN_VALUE;

Opzione 3:

Meglio ancora, inizializza maxcon il primo numero inserito. Questa è l'opzione migliore. Ma funzionerà solo se le condizioni dell'attività richiedono all'utente di inserire almeno un numero.