🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi Array in C++

Codegrind Team•Jul 22 2023

Ecco degli esercizi semplici con soluzione per praticare le basi degli array in C++.

Esercizio 1

Calcola la somma degli elementi di un array di numeri interi:
#include <iostream>
using namespace std;

int main() {
    int numeri[] = {5, 10, 15, 20, 25};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);
    int somma = 0;

    for (int i = 0; i < lunghezza; i++) {
        somma += numeri[i];
    }

    cout << "La somma degli elementi dell'array è: " << somma << endl;

    return 0;
}

Esercizio 2

Trova il valore massimo in un array di numeri interi:
#include <iostream>
using namespace std;

int main() {
    int numeri[] = {5, 10, 15, 20, 25};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);
    int massimo = numeri[0];

    for (int i = 1; i < lunghezza; i++) {
        if (numeri[i] > massimo) {
            massimo = numeri[i];
        }
    }

    cout << "Il valore massimo dell'array è: " << massimo << endl;

    return 0;
}

Esercizio 3

Verifica se un numero è presente in un array di numeri interi:
#include <iostream>
using namespace std;

int main() {
    int numeri[] = {5, 10, 15, 20, 25};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);
    int numeroDaTrovare = 15;
    bool presente = false;

    for (int i = 0; i < lunghezza; i++) {
        if (numeri[i] == numeroDaTrovare) {
            presente = true;
            break;
        }
    }

    if (presente) {
        cout << "Il numero " << numeroDaTrovare << " è presente nell'array." << endl;
    } else {
        cout << "Il numero " << numeroDaTrovare << " non è presente nell'array." << endl;
    }

    return 0;
}

Esercizio 4

Calcola la media dei valori di un array di numeri interi:
#include <iostream>
using namespace std;

int main() {
    int numeri[] = {5, 10, 15, 20, 25};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);
    int somma = 0;

    for (int i = 0; i < lunghezza; i++) {
        somma += numeri[i];
    }

    double media = static_cast<double>(somma) / lunghezza;

    cout << "La media dei valori dell'array è: " << media << endl;

    return 0;
}

Esercizio 5

Inverti l'ordine degli elementi in un array di numeri interi:
#include <iostream>
using namespace std;

int main() {
    int numeri[] = {5, 10, 15, 20, 25};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);

    cout << "Array originale: ";
    for (int i = 0; i < lunghezza; i++) {
        cout << numeri[i] << " ";
    }
    cout << endl;

    for (int i = 0; i < lunghezza / 2; i++) {
        int temp = numeri[i];
        numeri[i] = numeri[lunghezza - i - 1];
        numeri[lunghezza - i - 1] = temp;
    }

    cout << "Array invertito: ";
    for (int i = 0; i < lunghezza; i++) {
        cout << numeri[i] << " ";
    }
    cout << endl;

    return 0;
}

Esercizio 6

Trova il numero di occorrenze di un elemento in un array di numeri interi:
#include <iostream>
using namespace std;

int main() {
    int numeri[] = {5, 10, 5, 20, 5};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);
    int numeroDaContare = 5;
    int conteggio = 0;

    for (int i = 0; i < lunghezza; i++) {
        if (numeri[i] == numeroDaContare) {
            conteggio++;
        }
    }

    cout << "Il numero " << numeroDaContare << " compare " << conteggio << " volte nell'array." << endl;

    return 0;
}

Esercizio 7

Copia gli elementi di un array in un altro array:
#include <iostream>
using namespace std;

int main() {
    int array1[] = {1, 2, 3, 4, 5};
    int lunghezza = sizeof(array1) / sizeof(array1[0]);
    int array2[lunghezza];

    for (int i = 0; i < lunghezza; i++) {
        array2[i] = array1[i];
    }

    cout << "Elementi di array1: ";
    for (int i = 0; i < lunghezza; i++) {
        cout << array1[i] << " ";
    }
    cout << endl;

    cout << "Elementi di array2 (copia di array1): ";
    for (int i = 0; i < lunghezza; i++) {
        cout << array2[i] << " ";
    }
    cout << endl;

    return 0;
}

Esercizio 8

Trova la posizione di un elemento in un array di stringhe:
#include <iostream>
#include <string>
using namespace std;

int main() {
    string nomi[] = {"Marco", "Paola", "Luca", "Giulia", "Francesca"};
    int lunghezza = sizeof(nomi) / sizeof(nomi[0]);
    string nomeDaTrovare = "Luca";
    int posizione = -1;

    for (int i = 0; i < lunghezza; i++) {
        if (nomi[i] == nomeDaTrovare) {
            posizione = i;
            break;
        }
    }

    if (posizione != -1) {
        cout << "Il nome " << nomeDaTrovare << " si trova nella posizione " << posizione << " dell'array." << endl;
    } else {
        cout << "Il nome " << nomeDaTrovare << " non è presente nell'array." << endl;
    }

    return 0;
}

Esercizio 9

Controlla se un array di numeri interi è ordinato in modo crescente:
#include <iostream>
using namespace std;

bool isArrayOrdered(int array[], int lunghezza) {
    for (int i = 1; i < lunghezza; i++) {
        if (array[i] < array[i - 1]) {
            return false;
        }
    }
    return true;
}

int main() {
    int numeri[] = {1, 2, 3, 4, 5};
    int lunghezza = sizeof(numeri) / sizeof(numeri[0]);

    if (isArrayOrdered(numeri, lunghezza)) {
        cout << "L'array è ordinato in modo crescente." << endl;
    } else {
        cout << "L'array non è ordinato in modo crescente." << endl;
    }

    return 0;
}

Esercizio 10

Calcola la somma di due array di numeri interi e salva il risultato in un terzo array:
#include <iostream>
using namespace std;

void sumArrays(int array1[], int array2[], int risultato[], int lunghezza) {
    for (int i = 0; i < lunghezza; i++) {
        risultato[i] = array1[i] + array2[i];
    }
}

int main() {
    int array1[] = {1, 2, 3, 4, 5};
    int array2[] = {6, 7, 8, 9, 10};
    int lunghezza = sizeof(array1) / sizeof(array1[0]);
    int risultato[lunghezza];

    sumArrays(array1, array2, risultato, lunghezza);

    cout << "Array1: ";
    for (int i = 0; i < lunghezza; i++) {
        cout << array1[i] << " ";
    }
    cout << endl;

    cout << "Array2: ";
    for (int i = 0; i < lunghezza; i++) {
        cout << array2[i] << " ";
    }
    cout << endl;

    cout << "Risultato della somma: ";
    for (int i = 0; i < lunghezza; i++) {
        cout << risultato[i] << " ";
    }
    cout << endl;

    return 0;
}