[SOL] Esercizio n. 14 Array (14_array)


Spiegazione del Programma: Calcolo di Somma e Media

Questo programma in C++ calcola la somma e la media di una serie di numeri inseriti dall'utente.

Analisi del Codice

#include <iostream>
using namespace std;

int main() {
    int n;
    cout << "Quanti numeri? ";
    cin >> n;

    double v[100];
    double somma = 0;

    for (int i = 0; i < n; i++) {
        cout << "Numero " << i + 1 << ": ";
        cin >> v[i];
        somma += v[i];
    }

    cout << "Somma = " << somma << endl;
    if (n > 0)
        cout << "Media = " << somma / n << endl;

    return 0;
}

Come Funziona il Programma

1. Preparazione iniziale

  • int n; - Dichiara una variabile per memorizzare quanti numeri l'utente vuole inserire
  • cout << "Quanti numeri? "; - Chiede all'utente di specificare la quantità di numeri
  • cin >> n; - Legge la risposta dell'utente

2. Dichiarazione delle variabili

  • double v[100]; - Crea un array che può contenere fino a 100 numeri decimali
  • double somma = 0; - Inizializza la variabile che conterrà la somma totale

3. Raccolta dei dati (ciclo for)

Il ciclo for si ripete n volte per:

  • Chiedere all'utente di inserire ogni numero
  • Salvare il numero nell'array v[i]
  • Aggiungere il numero alla somma totale con somma += v[i]

4. Visualizzazione dei risultati

  • Mostra la somma di tutti i numeri inseriti
  • Calcola e mostra la media (solo se sono stati inseriti dei numeri)

Esempio di Esecuzione

Quanti numeri? 3
Numero 1: 10.5
Numero 2: 20.0
Numero 3: 15.5
Somma = 46
Media = 15.3333

Caratteristiche Importanti

  • Tipo di dati: Usa double per gestire numeri decimali
  • Controllo di sicurezza: Verifica che n > 0 prima di calcolare la media (evita divisione per zero)
  • Limitazione: L'array può contenere massimo 100 numeri
  • Efficienza: Calcola la somma durante l'inserimento dei dati, non in un ciclo separato

Questo programma è un esempio classico di come utilizzare array e cicli per elaborare una collezione di dati numerici.


#include <iostream>
using namespace std;

int main() {
    int n;
    cout << "Quanti numeri? ";
    cin >> n;

    double v[100];
    double somma = 0;

    for (int i = 0; i < n; i++) {
        cout << "Numero " << i + 1 << ": ";
        cin >> v[i];
        somma += v[i];
    }

    cout << "Somma = " << somma << endl;
    if (n > 0)
        cout << "Media = " << somma / n << endl;

    return 0;
}