Witam wszystkich, nie ukrywam - mam problem... męczę się z tym i nie potrafię znaleźć błędu...
Program ma posortować dane 5 liczb przy użyciu petli, bez używania tablic. No więc wszystko gra oprócz 2 rzeczy.
Pierwsza, to nie za bardzo wiem jak zrobic zeby mi softowalo liczby ujemne na zasadzie:
-8, -7, -2, -1, 3 zamiast
-1, -2, -7, -8, 3 (najchetniej bym po prostu odwrocil te liczby o 180 stopni zeby wygladalo to na np w tym przypadku -8 -7 -2 -1 ale nie wiem jak to zrobic)
A drugi, że nie wiem jakim cudem zawsze A oraz B a rzadko kiedy ale również C D i E wyswietla mi podwójnie jezeli sa to liczby ujemne.
Np jesli podam -5 -2 -6 -1 -8 to mam wynik -1 -2 -5 -6 -8 -6 -5 -8
Oto kod:
#include <cstdlib>
#include <iostreamto>
using namespace std;
int main()
{
int A, B, C, D, E, AA, BB, CC, DD, EE, AAu, BBu, CCu, DDu, EEu;
int warunek = true;
cout << "Podaj 5 liczb ktore chcesz posortowac oddzielajac je enterami\n";
cin >> A >> B >> C >> D >> E;
if (A>=0) AA = A;
else AAu = A;
if (B>=0) BB = B;
else BBu = B;
if (C>=0) CC = C;
else CCu = C;
if (D>=0)DD = D;
else DDu = D;
if (E>=0)EE = E;
else EEu = E;
cout << endl;
while (warunek)
{
if (AAu==1)
cout << A << endl;
if (BBu==1)
cout << B << endl;
if (CCu==1)
cout << C << endl;
if (DDu==1)
cout << D << endl;
if (EEu==1)
cout << E << endl;
if (AAu>=1&&BBu>=1&&CCu>=1&&DDu>=1&&EEu>=1)
break;
AAu++; BBu++; CCu++; DDu++; EEu++;
}
while (warunek)
{
if (AA==0)
cout << A << endl;
if (BB==0)
cout << B << endl;
if (CC==0)
cout << C << endl;
if (DD==0)
cout << D << endl;
if (EE==0)
cout << E << endl;
if (AA<=0&&BB<=0&&CC<=0&&DD<=0&&EE<=0)
break;
AA--; BB--; CC--; DD--; EE--;
}
cout << "Program zakonczyl dzilanie.";
system("pause");
}
Mógłbym prosić o korektę? Albo chociaż żebyście mnie naprowadzili co gdzie nie tak itp ;) bo ja za nic nie widzę :/