04 | Ripetere con while
Capitolo 04 · Teoria, esempio ragionato e verifica.
Prima di iniziare: completa il capitolo 03.
Concetti e definizioni
while verifica la condizione prima di ogni iterazione e può eseguire zero volte. Un accumulatore conserva un risultato parziale; un contatore misura le ripetizioni. Il ciclo deve modificare lo stato che rende vera la condizione oppure terminare esplicitamente. Una sentinella è un valore riservato per interrompere l’input.
Esempio completo
Salva come esempio.cpp. Compila con g++ -std=c++17 -Wall -Wextra esempio.cpp -o esempio; esegui ./esempio (PowerShell: .\esempio.exe).
#include <iostream>
int main() {
int valore{}, somma = 0;
while (std::cin >> valore && valore != 0) {
somma += valore;
}
std::cout << somma;
}Segui l’esecuzione
Con 3 4 0 la somma è 7. La sentinella 0 non viene sommata; anche un input non numerico interrompe il ciclo.
Prova tu
Leggi temperature fino a 999 e conta quante sono negative.
Casi di prova e criteri di riuscita
-2 4 -1 999 → 2; 999 → 0. Non contare la sentinella.
Prima di proseguire
Descrivi a parole l’algoritmo, esegui i casi di prova e spiega almeno un possibile errore. Poi passa agli esercizi del capitolo 04.