Problem jest taki, że program po podaniu mu z palca 5 cyfr wskazuje poprawnie na największą z nich oraz oblicza średnią. Dodatkowo ma on za zadanie wskazać liczbę, która jest w najbliższej odległości od średniej z tym, że chce, aby uwzględniał taki przypadek kiedy mając średnią np 10 i w ciągu podanych liczb znajduje się 11 i 9 , aby program pokazywał, że te dwie liczby są w takiej samej odległości od 10 czyi mojej średniej. To co zrobiłem do tej porty bez tej ostatniej funkcjonalności:
#include <iostream>
using namespace std;
void wpisz (float *tab, int liczba)
{
for( int i = 0; i < liczba; i ++)
cin >> tab[i];
}
float srednia (float *tab, int ile)
{
float suma = 0;
float srednia = 0;
for( int i = 0; i < ile; i++)
suma+=tab[i];
return srednia = suma / ile;
//cout << "srednia wynosi = " << srednia << endl;
}
float porownanie(float *tab, int ile)
{
float bufor = tab[0];
for( int i = 0; i < ile; i ++)
if (bufor < tab[i])
bufor = tab[i];
return bufor;
}
void najblizsza(float *tab, int rozmiar, float srednia)
{
// ???
}
int main()
{
float tab[5];
cerr << "Podaj 5 dowolnych liczb " << endl;
wpisz(tab,5);
srednia(tab, 5);
cout << "największa wartos z opdanych = " << porownanie(tab, 5) << endl;
najblizsza(tab, 5);
return 0;
}