Cześć!
Mam pewien problem. Szukam już od kilku godzin i dalej nie wiem...
Mam napisać funkcję, która oblicza średnią liczb w tablicy (gdzie liczby są wylosowane z przedziału podanego przez użytkownika, np. od 10 do 110), a także która zlicza ilość liczb większych od tej średniej. Sumę mam zwrócić przez wskaźnik, a ilość liczb przez return. Mam to wywołać dla tej tablicy.
Czy mógłby ktoś mnie nakierować?
Mój kod:
#include <iostream>
#include <iomanip>
using namespace std;
int losowanie(int tablica[], int rozmiar, int p, int k){
srand(time(NULL));
for(int i = 0; i < rozmiar; i++) {
tablica[i] = rand() % (k - p + 1) + p;
}
cout << "\n-----------TABLICA-----------" << endl;
for (int i = 0; i < rozmiar; i++) {
if (i%6 == 0){
cout << "\n";
}
cout << setw (5) << tablica[i];
}
}
double srednia (int *tablica, int rozmiar, double *wynSrednia){
int i, suma;
int licznik = 0;
for (int i = 0; i < rozmiar; i++){
suma += tablica[i];
*wynSrednia = double(suma) / rozmiar;
}
for (int i = 0; i < rozmiar; i++) {
if (tablica[i] > *wynSrednia){
licznik++;
}
}
return licznik;
}
int main() {
int p, k, rozmiar, licznik;
int *tablica = new int[rozmiar];
double wynSrednia;
cout << "Podaj poczatek przedzialu: ";
cin >> p;
cout << "Podaj koniec przedzialu: " ;
cin >> k;
cout << "Podaj rozmiar tablicy (liczby elementow): ";
cin >> rozmiar;
cout << losowanie(tablica, rozmiar, p, k) << endl;
}