🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi Ciclo While e Do While in C++

Codegrind Team•Jul 22 2023

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;
}