Problem here
All submissions for this problem are available.
Pooja would like to withdraw X $US from an ATM. The cash machine will only accept the transaction if Xis a multiple of 5, and Pooja’s account balance has enough cash to perform the withdrawal transaction (including bank charges). For each successful withdrawal the bank charges 0.50 $US. Calculate Pooja’s account balance after an attempted transaction.
Input
Positive integer 0 < X <= 2000 – the amount of cash which Pooja wishes to withdraw.
Nonnegative number 0<= Y <= 2000 with two digits of precision – Pooja’s initial account balance.
Output
Output the account balance after the attempted transaction, given as a number with two digits of precision. If there is not enough money in the account to complete the transaction, output the current bank balance.
Example – Successful Transaction
Input: 30 120.00 Output: 89.50
Example – Incorrect Withdrawal Amount (not multiple of 5)
Input: 42 120.00 Output: 120.00
Example – Insufficient Funds
Input: 300 120.00 Output: 120.00
Solution
if….else…
#include <iostream> #include <iomanip> #include <math.h> using namespace std; int main(){ double n, m; while (cin >> n >> m){ double ans, c; if (n+0.5 <= m){ c = fmod (n, 5); if (c == 0){ ans = m - n - 0.5; cout << fixed << setprecision(2) << ans << endl; } else { cout << fixed << setprecision(2) << m << endl; } } else { cout << fixed << setprecision(2) << m << endl; } } return 0; } |
No comments:
Post a Comment