Witam napisałem program o znajdowaniu liczby najbliższej do średniej , ale coś jest nie tak. Wydaje mi się, że mój zapis ma logiczny sens i jego niepoprawne działanie wynika z błędu, ktorego nie mogę zauważyć. Proszę o pomoc. Z zadania nr 1 {-55,-44,-33,11,22} wychodzi mi, że liczba 22 jest właściwa, ale jak łatwo można zauważyć nie jest to prawdą.
#include <iostream>
using namespace std;
float a,b,c,d,e,sr;
int main()
{
cout << "Podaj 5 liczb oddzielonych spacja" << endl;
cin>>a>>b>>c>>d>>e;
sr=(a+b+c+d+e)/5; //-19.8
cout<<"Srednia tych liczb wynosi: " <<sr<< endl;
if (((sr-a)<(sr-b)) && ((sr-a)<(sr-c))&& ((sr-a)<(sr-d)) && ((sr-a)<(sr-e)))
cout<<"Najblizsza liczba do sredniej to: "<< a;
else if (((sr-b)<(sr-a)) && ((sr-b)<(sr-c))&& ((sr-b)<(sr-d)) && ((sr-b)<(sr-e)))
cout<<"Najblizsza liczba do sredniej to: "<< b;
else if (((sr-c)<(sr-a)) && ((sr-c)<(sr-b))&& ((sr-c)<(sr-d)) && ((sr-c)<(sr-e)))
cout<<"Najblizsza liczba do sredniej to: "<< c;
else if (((sr-d)<(sr-a)) && ((sr-d)<(sr-b))&& ((sr-d)<(sr-c)) && ((sr-d)<(sr-e)))
cout<<"Najblizsza liczba do sredniej to: "<< d;
else if (((sr-e)<(sr-a)) && ((sr-e)<(sr-b))&& ((sr-e)<(sr-d)) && ((sr-e)<(sr-c)))
cout<<"Najblizsza liczba do sredniej to: "<< e;
return 0;
}