Witam wszystkich serdecznie. Zwracam się do bardziej doświadczonych osób ode mnie, a biorąc pod uwagę, że uczę się C++ stosunkowo krótko, to raczej nie będzie ciężko o sporą ilość takich osób :) Przerabiam aktualnie kurs, gdzie na końcu działu było zadanie domowe o treści:
Napisz program znajdujący liczbę najbliższą średniej z 5-ciu podanych liczb.
Program napisałem, ale strasznie dużo w nim chaosu i jeśli możecie troszkę pomóc co mógłbym poprawić, aby był bardziej czytelny, byłbym bardzo wdzięczny. Jednocześnie proszę o wyrozumiałość ze względu na małe doświadczenie w programowaniu. Może mało w nim profesjonalizmu, ale przynajmniej mam pewność i wewnętrzną radość, że sam napisałem :) Oto moje wypociny :
#include <iostream>
using namespace std;
int main()
{
float liczba[5];
float wyniki[5];
float suma=0,srednia,wynik;
float najblizsza_1,najblizsza_2;
int licznik=0;
cout << "Podaj 5 liczb:" << endl;
for (int i=0; i<5; i++)
{
cin >> liczba[i];
suma += liczba[i];
} // FOR
srednia=suma/5;
cout << "Srednia: " << srednia << endl;
for (int k=0; k<5; k++)
{
wyniki[k]=liczba[k]-srednia;
if (wyniki[k]<0)
wyniki[k]=wyniki[k]*(-1);
cout << wyniki[k] << endl;
} // FOR
najblizsza_1=liczba[0];
wynik=wyniki[0];
for (int j=0; j<4; j++)
{
if (wynik>wyniki[j+1])
{
wynik=wyniki[j+1];
najblizsza_1=liczba[j+1];
} // IF
if ((wynik == wyniki[j+1]) && (najblizsza_1 != liczba[j+1]))
{
najblizsza_2=liczba[j+1];
licznik++;
} // IF
} // FOR
if(licznik==0)
{
cout << "Liczba najblizsza sredniej: " << najblizsza_1;
} // IF
else cout << "Liczby najblizsze sredniej: " << najblizsza_1 << " oraz " << najblizsza_2;
return 0;
}