Witam, mam pytanie otóż napisałem programik z głowy, który oblicza jaka maksymalną liczbę zeszytów w jakiej cenie możesz kupić i ile reszty ewentualnie ci zostanie. Problem jest następujący, jeżeli podam minimalną liczbę za jaką możesz kupić jeden zeszyt reszta w tym programie nie wyświetla się poprawnie. Nie dzieję się tak w przypadku podania większej liczby niż minimalna. Błąd występuje w trzech typach zeszytów. Mam nadzieję, że będzie mi ktoś w stanie pomóc. (wiem ze program nie jest napisany najlepiej ale dopiero staram się opanować ten język programowania.)
#include <iostream>
#include <math.h>
#include <cstdlib>
using namespace std;
int ilosc[2];
long double kwota,reszta[2];
int main()
{
cout<<" Podaj twoj kapital: ";
cin>>kwota;
cout<<endl<<endl<<" Jeden zeszyt z gruba okladka kosztuje 3zl i 30 groszy."
<<endl<<" Jeden zeszyt z miekka okladka kosztuje 2 zl i 40 groszy."
<<endl<<" Jeden zeszyt A4 w linie kosztuje 2zl i 90 groszy."
<<endl<<endl<<" Wiec za kwote "<<kwota<<" zlotych mozesz kupic:"<<endl;
ilosc[0]=kwota/3.30;
reszta[0]=kwota-(ilosc[0]*3.30);
ilosc[1]=kwota/2.40;
reszta[1]=kwota-(ilosc[1]*2.40);
ilosc[2]=kwota/2.90;
reszta[2]=kwota-(ilosc[2]*2.90);
///1/////////////////////////////////////////////////////////////////////////
if(kwota<3.30)
{
cout<<endl<<" Niestety nie stac cie na ani jeden zeszyt z gruba okladka.";
}
else if(kwota>=3.30)
{
if(reszta[0]==0)
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka oraz nie otrzymujesz reszty.";
}
else if(reszta[0]<1)
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci "<<reszta[0]*100<<" groszy.";
}
if(reszta[0]==1)
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci 1 zl.";
}
else if((reszta[0]>1)&&(reszta[0]<2))
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci 1 zl i "<<(reszta[0]*100)-100<<" groszy.";
}
if(reszta[0]==2)
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci 2 zl.";
}
else if((reszta[0]>2)&&(reszta[0]<3))
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci 2 zl i "<<(reszta[0]*100)-200<<" groszy.";
}
if(reszta[0]==3)
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci 3 zl.";
}
else if(reszta[0]>3)
{
cout<<endl<<" "<<ilosc[0]<<" zeszytow z gruba okladka i zostanie ci 3zl i "<<(reszta[0]*100)-300<<" groszy.";
}
}
///2/////////////////////////////////////////////////////////////////////////
if(kwota<2.40)
{
cout<<endl<<" Niestety nie stac cie na ani jeden zeszyt z miekka okladka.";
}
else if(kwota>=2.40)
{
if(reszta[1]==0)
{
cout<<endl<<" "<<ilosc[1]<<" zeszytow z miekka okladka oraz nie otrzymujesz reszty.";
}
else if(reszta[1]<1)
{
cout<<endl<<" "<<ilosc[1]<<" zeszytow z miekka okladka i zostanie ci "<<reszta[1]*100<<" groszy.";
}
if(reszta[1]==1)
{
cout<<endl<<" "<<ilosc[1]<<" zeszytow z miekka okladka i zostanie ci 1 zl.";
}
else if((reszta[1]>1)&&(reszta[1]<2))
{
cout<<endl<<" "<<ilosc[1]<<" zeszytow z miekka okladka i zostanie ci 1 zl i "<<(reszta[1]*100)-100<<" groszy.";
}
if(reszta[1]==2)
{
cout<<endl<<" "<<ilosc[1]<<" zeszytow z miekka okladka i zostanie ci 2 zl.";
}
else if(reszta[1]>2)
{
cout<<endl<<" "<<ilosc[1]<<" zeszytow z miekka okladka i zostanie ci 2 zl i "<<(reszta[1]*100)-200<<" groszy.";
}
}
///3/////////////////////////////////////////////////////////////////////////
if(kwota<2.90)
{
cout<<endl<<" Niestety nie stac cie na ani jeden zeszyt A4 w linie.";
}
else if(kwota>=2.90)
{
if(reszta[2]==0)
{
cout<<endl<<" "<<ilosc[2]<<" zeszytow A4 w linie oraz nie otrzymujesz reszty";
}
else if(reszta[2]<1)
{
cout<<endl<<" "<<ilosc[2]<<" zeszytow A4 w linie i zostanie ci "<<reszta[2]*100<<" groszy.";
}
if(reszta[2]==1)
{
cout<<endl<<" "<<ilosc[2]<<" zeszytow A4 w linie i zostanie ci 1 zl.";
}
else if((reszta[2]>1)&&(reszta[2]<2))
{
cout<<endl<<" "<<ilosc[2]<<" zeszytow A4 w linie i zostanie ci 1 zl i "<<(reszta[2]*100)-100<<" groszy.";
}
if(reszta[2]==2)
{
cout<<endl<<" "<<ilosc[2]<<" zeszytow A4 w linie i zostanie ci 2 zl.";
}
else if(reszta[2]>2)
{
cout<<endl<<" "<<ilosc[2]<<" zeszytow A4 w linie i zostanie ci 2 zl i "<<(reszta[2]*100)-200<<" groszy.";
}
}
return 0;
}