51 lines
1.6 KiB
C++
51 lines
1.6 KiB
C++
//Patriche Robert Cosmin 3Ain
|
|
#include <iostream>
|
|
#include <cstdlib>
|
|
#include <ctime>
|
|
using namespace std;
|
|
|
|
void contaPariDispari(int arr[], int size, int &pari, int &dispari, double &mediaPari, double &mediaDispari);
|
|
|
|
int main() {
|
|
const int DIM = 15;
|
|
int numeri[DIM];
|
|
srand(time(0));
|
|
|
|
cout << "Array: ";
|
|
for (int i = 0; i < DIM; i++) {
|
|
numeri[i] = rand() % 100 + 1;
|
|
cout << numeri[i] << " ";
|
|
}
|
|
cout << endl;
|
|
|
|
int pari = 0, dispari = 0;
|
|
double mediaPari = 0, mediaDispari = 0;
|
|
contaPariDispari(numeri, DIM, pari, dispari, mediaPari, mediaDispari);
|
|
|
|
cout << "Elementi pari: " << pari << ", Media pari: " << mediaPari << endl;
|
|
cout << "Elementi dispari: " << dispari << ", Media dispari: " << mediaDispari << endl;
|
|
if (mediaPari > mediaDispari)
|
|
cout << "La media dei pari è maggiore." << endl;
|
|
else if (mediaDispari > mediaPari)
|
|
cout << "La media dei dispari è maggiore." << endl;
|
|
else
|
|
cout << "Le medie sono uguali." << endl;
|
|
|
|
return 0;
|
|
}
|
|
|
|
void contaPariDispari(int arr[], int size, int &pari, int &dispari, double &mediaPari, double &mediaDispari) {
|
|
int sommaPari = 0, sommaDispari = 0;
|
|
for (int i = 0; i < size; i++) {
|
|
if (arr[i] % 2 == 0) {
|
|
pari++;
|
|
sommaPari += arr[i];
|
|
} else {
|
|
dispari++;
|
|
sommaDispari += arr[i];
|
|
}
|
|
}
|
|
if (pari > 0) mediaPari = static_cast<double>(sommaPari) / pari;
|
|
if (dispari > 0) mediaDispari = static_cast<double>(sommaDispari) / dispari;
|
|
}
|