2009~2014/C/C++
[C언어 기출문제&풀이] ATM
malu
2010. 11. 4. 20:21
프로그램 명: ATM
제한시간: 1 초
영자는 ATM(Automated Teller Machine) 기에서 X $ 의 돈을 인출하고자 한다. 이 기계는 5 의 배수 금액 만을 취급한다. 단, 인출할 때 마다 0.5 $ 의 수수료를 내어야 한다.
거래 후의 계좌에서 남은 금액을 계산하라.
입력
두 수가 입력으로 주어진다.- 첫 수는 인출 할 금액으로 정수이고 0 < X <= 10000
- 다음 수는 소수 이하 두 자리 수를 가진 최초 계좌의 금액($)이다. 0 <= Y <= 2000
출력
거래 후의 잔액을 소수 이하 두자리로 출력한다. 정상 적인 인출이 불가능할 경우 원래의 금액을 출력한다. ATM 기계에는 충분한 돈이 있다는 것은 보장된다.입출력 예
입력 30 120.00 출력 89.50 입력 42 120.00 출력 120.00 입력 300 120.00 출력 120.00
출처:www.codeshef.com (easy 두 번째 문제)
풀이 : n이 5로 나누어 지지 않을 때(if(n%5!=0)와 정상 인출이 불가능한 경우(n+0.5>money)에
원래의 금액을 출력하고 나머지 상황에 대해서 들어있는돈에서 인출할 금액과 수수료를 빼준다.
#include <stdio.h>
int main()
{
int n;
float money;
scanf("%d %f",&n,&money);
if(n%5!=0||n+0.5>money) printf("%2.2f",money);
else printf("%2.2f",money-n-0.5);
}