School-Coding-Cpp/array/media_variaz.cpp

47 lines
1.0 KiB
C++

/*Dato in input un elenco di numeri casuali, determinare la media e la varianza.
Suggerimento: sola lettura
*/
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
#define NMAX 13
void genera(int vett[], size_t n) {
srand(time(NULL));
for(size_t i = 0; i< n; ++i)
vett[i] = rand () % (100-10+1) + 10;
}
float media(int vett[], size_t n) {
int media2;
for (int i = 0; i <= n; i++)
media2 += vett[i];
media2/= n;
return media2;
}
float varianza(int vett[], size_t n) {
int varianza2;
int media2;
for (int i = 0; i <= n; i++)
media2 += vett[i];
media2/= n;
for (int i = 0; i <= n; i++)
varianza2 = varianza2 + (1 / n * ((vett[i] - media2) * (vett[i] - media2)));
return varianza2;
}
int main()
{
int card;
cout << "Inserisci il numero di valori da memorizzare dentro l'array: ";
cin >> card;
cout << endl;
int vett[card];
genera(vett, card);
cout << "Media: " << media(vett, card) << endl;
cout << "Varianza: " << varianza(vett, card) << endl;
return 0;
}