Witam,
Mam problem z odejmowaniem floatów. Wykonuję program na zajęcia i w momencie gdy wynikiem odejmowania jest 0 to program zwraca wartość typu 2,28983e-15. Program ma wydawać resztę lub też informować że nie może wydać reszty. Nad drugą częścią polecenia się jeszcze nie skupiłem. Oto kod:
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
double tab[14]={200, 100, 50, 20, 10, 5, 2, 1, 0.5, 0.2, 0.1, 0.05, 0.02, 0.01};
int il[14];
for (int a=0; a<14; a++)
{
cout<<"Podaj ilosc "<<tab[a]<<": ";
cin >> il[a];
}
double i;
cin >> i;
for (int a=0; a<15; a++)
{
while (true)
{
if (tab[a]<=i && il[a]!=0)
{
cout<<tab[a]<<": ";
cout<<i<<"-"<<tab[a]<<"="<<i-tab[a]<<" ";
i=i-tab[a];
cout<<i<<endl;
il[a]--;
}
else break;
}
}
system("PAUSE");
return EXIT_SUCCESS;
}