Poprawiłem kod według waszych sugestii. Mojim zdaniem jest troche bardziej nieczytelny niz był przedtem i zajmuje więcej lini. Proszę o ocenę tego co zrobiłem źle.
#include <iostream>
#include <math.h>
using namespace std;
float liczby[5];
float suma, srednia,min_roznica;
float roznica[5];
int main()
{
cout << "Podaj 5 liczb: ";
for(int i=0;i<=4;i++)
{
cin >> liczby[i];
suma += liczby[i];
}
srednia = suma /5;
for(int i=0;i<=4;i++)
{
roznica[i]= fabs(srednia-liczby[i]); // Obliczanie wartosci bezwzglednej roznicy pomiedzy srednia a dana liczba
}
min_roznica=roznica[0];
for(int i=0;i<=4;i++)
{
if (min_roznica>roznica[i]) min_roznica=roznica[i]; // Szukanie najmniejszej roznicy
}
for(int i=0;i<=4;i++) // Przypisanie najmniejszej ruznicy do podanej liczby
{
if(min_roznica==roznica[i])min_roznica=liczby[i];
}
cout << "Suma podanych liczb wynosi: " << suma << endl;
cout << "Srednia podanych liczb wynosi: " << srednia << endl;
cout << "Liczba podana, ktora jest najblizsza sredniej to: " << min_roznica << endl;
return 0;
}
Można zmniejszyć ilość lini ale wtedy całkiem staje się nie czytelny.
#include <iostream>
#include <math.h>
using namespace std;
float liczby[5];
float suma, srednia,min_roznica;
float roznica[5];
int main()
{
cout << "Podaj 5 liczb: ";
for(int i=0;i<=4;i++)
{
cin >> liczby[i];
suma += liczby[i];
}
srednia = suma /5;
for(int i=0;i<=4;i++) roznica[i]= fabs(srednia-liczby[i]); // Obliczanie wartosci bezwzglednej roznicy pomiedzy srednia a dana liczba
min_roznica=roznica[0];
for(int i=0;i<=4;i++) if (min_roznica>roznica[i]) min_roznica=roznica[i]; // Szukanie najmniejszej roznicy
for(int i=0;i<=4;i++) if(min_roznica==roznica[i])min_roznica=liczby[i]; // Przypisanie najmniejszej ruznicy do podanej liczby
cout << "Suma podanych liczb wynosi: " << suma << endl;
cout << "Srednia podanych liczb wynosi: " << srednia << endl;
cout << "Liczba podana, ktora jest najblizsza sredniej to: " << min_roznica << endl;
return 0;
}