2015-10-22 56 views
0

问题:你有$ 1.45我们怎么能输出多少宿舍分毫这是使用模/ FMOD和if语句C++

输出应为5季2毛钱1吨镍。

double amount = 1.45 
double quarter = .25 
double dime = .10 
double nickel = .05 
if(fmod (amount,quarter) == 0) 
cout << "your change is"<< amount/quarter << " quarters" ; 
+0

https://en.wikipedia.org/wiki/Change-making_problem –

+1

不要使用浮点数('double')来获得金钱。 – aschepler

+1

转换为美分(使用诠释算法为分,因为它是离散值)为1.45 * 100,然后四分之一=(1.45 * 100)/(0.25 * 100),角钱=((1.45 * 100) - 四分之一*(0.25 * 100))/(0.10 * 100)和镍相同 – Damir

回答

1

转换为分(对于美分使用int算术因为它是离散的值)作为1.45 * 100,然后

int quarters = 145/25; 
int dimes = (145 - quarters * 25)/10; 
int nickels = (145 - quarters * 25 - dimes * 10)/5;