Codice C++
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{ unsigned dim = 2; // Dimensione iniziale del vettore
double *vett = new double[dim]; // Alloca un vettore di 2 elementi
unsigned n = 0; // Numero di valori acquisiti
double s = 0.0; // Accumulatore
cout << "Inserisci dei numeri a piacimento. "
"Batti una lettera per terminare" << endl;
// Acquisisce i valori da tastiera finche' si battono cifre numeriche
while(cin >> vett[n]) {
n++;
if (n >= dim) {
dim *= 2; // Raddoppia la dimensione precedente del vettore
double *temp = new double[dim]; // Crea un nuovo vettore
// ricopia i vecchi valori nel nuovo vettore
for (unsigned i = 0; i < n; i++)
temp[i] = vett[i];
// Dealloca la memoria impegnata precedentemente
delete[] vett;
vett = temp; // punta al nuovo vettore
}
}
cout << "\nElenco dati inseriti:" << endl;
for(unsigned i = 0; i< n; i++) {
cout << vett[i] << endl; // Visualizza i valori inseriti
s += vett[i]; // Accumula la loro somma
}
cout << "Media: " << s / n << endl; // Visualizza la media
system("pause");
}