# ATM | CodeChef Solution

Today we are going to solve ATM CodeChef Solution in C++ and Python.

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 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 statement.

### 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 – ATM CodeChef Solution(C++)

### Python

```try:
x,y = map(float, input().split())
if x <= y-0.5 and x % 5==0:
print("%.2f"%(y-x-0.50))
else:
print("%.2f"%y)

except:
pass```

### C++

```#include <iostream>
#include <iomanip>
using namespace std;

int main() {
int a;
float b;
cin >> a >> b;
if (a % 5 == 0 && a<=b -0.5) b = b-a-0.50;
cout << fixed <<setprecision(2) <<b;
return 0;
}```

Disclaimer: The above Problem (ATM – CodeChef Solution) is provided by CodeChef but the solution is provided by CodingBroz.

Broz Who Code

CodingBroz