Problem
Pooja would like to withdraw X $US from an ATM. The cash machine will only accept the transaction if X is 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 X, the amount of cash which Pooja wishes to withdraw.
Nonnegative number Y, 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.
Constraints
- 1 <= X ≤ 2000
- 1 <= Y ≤ 2000
Sample Input
30 120.00
Sample Output
89.50
Solution
Code Implementation
//
// main.cpp
// ATM
//
// Created by Himanshu on 19/02/22.
//
#include <iostream>
using namespace std;
int main() {
int X;
float Y;
cin>>X>>Y;
if ((X%5 == 0) && (Y >= X + 0.5)) {
Y = Y - X - 0.5;
}
printf("%f", Y);
return 0;
}
Time Complexity: O(1)