【CodeChef】ATM

Problem here
All submissions for this problem are available.

Problem

Pooja would like to withdraw X USfromanATM.ThecashmachinewillonlyacceptthetransactionifXisamultipleof5,andPoojasaccountbalancehasenoughcashtoperformthewithdrawaltransaction(includingbankcharges).Foreachsuccessfulwithdrawalthebankcharges0.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; }

你可能感兴趣的:(【CodeChef】ATM)