반응형
출장비를 입력받은 후, 화폐 매수(오만 원, 만 원, 오천 원, 천 원, 오백 원, 오십 원, 십 원) 계산하여 출력하기 - 2
입력형식 | 출력형식 |
출장비: | 50,000원: 10,000원: 5,000원: 1,000원: 500원: 100원: 50원: 10원: |
#include<stdio.h>
int main(){
int money = 0;
int rest = 50000;
printf("출장비 : ");
scanf("%d", &money);
printf("50000원 : %d\n", money / rest); // money에서 rest(50000)을 나누어준다. int라서 소숫점은 버림된다.
money = money - (money / rest * rest); // (money / rest * rest)는 int끼리의 계산이라 결과가 int로 나온다.
// 순차적으로 계산하기 때문에 money / rest 은 50000원 권의 매수가 나오고,
// 다시 rest를 곱해주어 (매수 * 50000) 값을 구해준다.
// 그리고 구한 값을 총액에서 빼준다.
rest = rest / 5; // 50000원 매수를 구했기 때문에, 그 다음으로 큰 10000원 매수를 구해주어야 한다.
printf("10000원 : %d\n", money / rest);
money -= (money / rest * rest);
rest = rest / 2; // 10000원 매수 다음, 5000원 매수를 구해주어야 한다.
printf("5000원 : %d\n", money / rest);
money -= (money / rest * rest);
rest /= 5;
printf("1000원 : %d\n", money / rest);
money -= (money / rest * rest);
rest /= 2;
printf("500원 : %d\n", money / rest);
money -= (money / rest * rest);
rest /= 5;
printf("100원 : %d\n", money / rest);
money -= (money / rest * rest);
rest /= 2;
printf("50원 : %d\n", money / rest);
money -= (money / rest * rest);
rest /= 5;
printf("10원 : %d\n", money / rest);
return 0;
}
반응형
'C' 카테고리의 다른 글
[C언어] 실습: 양수 또는 음수 판별하기 (0) | 2020.12.20 |
---|---|
[C언어] 제어문 (0) | 2020.12.18 |
[C언어] 실습: 출장비를 입력받은 후, 화폐 매수(오만 원, 만 원, 오천 원, 천 원, 오백 원, 오십 원, 십 원) 계산하여 출력하기 - 1 (0) | 2020.12.15 |
[C언어] 실습: 반지름을 입력받아 원의 면적과 둘레 출력하기 (0) | 2020.12.14 |
[C언어] 실습: 1년(365.2422일)을 일, 시, 분, 초로 표현하기 (0) | 2020.12.13 |