1. Însumarea numerelor folosind o whilebuclă

Să scriem un program care citește numerele de la tastatură (atâta timp cât utilizatorul introduce ceva care arată ca un număr) și apoi afișează suma lor pe ecran. Iată cum ar arăta codul unui astfel de program (arătăm doar codul din interiorul metodei main).

Cod Explicaţie
Scanner console = new Scanner(System.in);
int sum = 0;
while (console.hasNextInt())
{
   int x = console.nextInt();
   sum = sum + x;
}
System.out.println(sum); 
Creați un Scannerobiect pentru a citi datele din consolă.
Vom stoca suma numerelor în sumvariabilă.
Atâta timp cât numerele sunt introduse din consolă,

citiți următorul număr în xvariabilă.
Adăugați xla suma numerelor (variabila sum).

Afișați suma calculată pe ecran.

2. Găsirea numărului maxim folosind o whilebuclă

Al doilea program va citi și numere de la tastatură (atâta timp cât utilizatorul introduce ceva asemănător unui număr), dar acum vrem să afișăm cel mai mare dintre numerele introduse. Iată cum ar arăta codul unui astfel de program (arătăm doar codul din interiorul metodei main).

Cod Explicaţie
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ți un Scannerobiect pentru a citi datele din consolă.
Variabila maxva stoca numărul maxim de numere.
Atâta timp cât numerele sunt introduse din consolă,

citiți următorul număr în xvariabilă.
Comparați xși max. Dacă xeste mai mare decât max,
actualizați valoarea maximă.

Afișați numărul maxim pe ecran.

Iată un punct interesant: dacă toate numerele introduse de la tastatură sunt negative, atunci programul va afișa 0. Ceea ce este incorect.

Ca rezultat, valoarea inițială a variabilei max ar trebui să fie cât mai mică posibil.

Opțiunea 1:

Îl puteți seta egal cu -2,000,000,000(negativ două miliarde). Acesta nu este un început rău.

Opțiunea 2:

Alocați cea mai mică intvaloare posibilă. Există o constantă specială pentru aceasta: Integer.MIN_VALUE;

Opțiunea 3:

Mai bine, inițializați maxcu primul număr introdus. Aceasta este cea mai bună opțiune. Dar acest lucru va funcționa numai dacă condițiile sarcinii impun utilizatorului să introducă cel puțin un număr.