Esercizi Ciclo While e Do While in C++
Ecco degli esercizi semplici con soluzione per praticare le basi del ciclo while e do while in C++.
Esercizio 1
Utilizza un ciclo while per stampare i numeri da 1 a 10.
#include <iostream>using namespace std;
int main() { int i = 1;
while (i <= 10) { cout << i << " "; i++; }
return 0;}
Esercizio 2
Utilizza un ciclo while per calcolare la somma dei numeri da 1 a 100 e stampa il risultato.
#include <iostream>using namespace std;
int main() { int somma = 0; int i = 1;
while (i <= 100) { somma += i; i++; }
cout << "La somma dei numeri da 1 a 100 è: " << somma << endl;
return 0;}
Esercizio 3
Utilizza un ciclo while per stampare i multipli di 3 da 1 a 100.
#include <iostream>using namespace std;
int main() { int i = 3;
while (i <= 100) { cout << i << " "; i += 3; }
return 0;}
Esercizio 4
Chiedi all'utente di inserire un numero intero positivo e calcola il suo fattoriale utilizzando un ciclo while.
#include <iostream>using namespace std;
int main() { int numero; cout << "Inserisci un numero: "; cin >> numero;
int fattoriale = 1; int i = 1;
while (i <= numero) { fattoriale *= i; i++; }
cout << "Il fattoriale di " << numero << " è: " << fattoriale << endl;
return 0;}
Esercizio 5
Chiedi all'utente di inserire il numero di elementi della sequenza di Fibonacci da stampare e utilizza un ciclo while per generare e stampare la sequenza.
#include <iostream>using namespace std;
int main() { int numeroElementi; cout << "Inserisci il numero di elementi della sequenza di Fibonacci da stampare: "; cin >> numeroElementi;
int primoElemento = 0; int secondoElemento = 1;
cout << primoElemento << " " << secondoElemento << " ";
int i = 3;
while (i <= numeroElementi) { int nuovoElemento = primoElemento + secondoElemento; cout << nuovoElemento << " ";
primoElemento = secondoElemento; secondoElemento = nuovoElemento;
i++; }
return 0;}
Esercizio 6
Chiedi all'utente di inserire una stringa e utilizza un ciclo while per contare il numero di vocali presenti.
#include <iostream>using namespace std;
int main() { string frase; cout << "Inserisci una frase: "; getline(cin, frase);
int conteggioVocali = 0; int i = 0;
while (i < frase.length()) { char carattere = tolower(frase[i]); if (carattere == 'a' || carattere == 'e' || carattere == 'i' || carattere == 'o' || carattere == 'u') { conteggioVocali++; } i++; }
cout << "Il numero di vocali nella frase inserita è: " << conteggioVocali << endl;
return 0;}
Esercizio 7
Chiedi all'utente di inserire un numero intero base e un esponente intero e calcola la potenza utilizzando un ciclo while.
#include <iostream>using namespace std;
int main() { int base, esponente; cout << "Inserisci la base: "; cin >> base; cout << "Inserisci l'esponente: "; cin >> esponente;
int risultato = 1; int i = 0;
while (i < esponente) { risultato *= base; i++; }
cout << "Il risultato della potenza è: " << risultato << endl;
return 0;}
Esercizio 8
Chiedi all'utente di inserire un numero e stampa la sua tabellina da 1 a 10 utilizzando un ciclo while.
#include <iostream>using namespace std;
int main() { int numero; cout << "Inserisci un numero: "; cin >> numero;
int i = 1;
while (i <= 10) { cout << numero << " x " << i << " = " << numero * i << endl; i++; }
return 0;}
Esercizio 9
Chiedi all'utente di inserire un numero intero e calcola il numero di cifre utilizzando un ciclo do-while.
#include <iostream>using namespace std;
int main() { long long numero; cout << "Inserisci un numero: "; cin >> numero;
int conteggioCifre = 0; int numeroTemporaneo = numero;
do { conteggioCifre++; numeroTemporaneo /= 10; } while (numeroTemporaneo != 0);
cout << "Il numero di cifre di " << numero << " è: " << conteggioCifre << endl;
return 0;}