C언어 문제
동전 교환기
사용자가 입력한 액수만큼 500 원, 100 원, 50 원, 10 원, 1 원 짜리 동전으로 교환해주는 프로그램을 만들어 주세요.
단, 제한 사항이 있습니다.
고액의 동전을 먼저 바꿔주어서 동전의 총 개수를 최소화하도록 프로그래밍 해주세요.
출력 결과는 다음과 같이 나타내시기 바랍니다.
오백 원 짜리 동전: ?? 개
백 원 짜리 동전: ?? 개
오십 원 짜리 동전: ?? 개
십 원 짜리 동전: ?? 개
일 원 짜리 동전: ?? 개
#include <stdio.h> int main(void){ //최초 금액 저장 및 남은 돈 저장을 위해 변수 선언 int coin; //500 원, 100 원, 50 원, 10 원짜리 동전의 개수를 저장할 변수 선언 int c500, c100, c50, c10; printf("교환할 금액을 입력해주세요 >> "); fflush(stdout); scanf("%d", &coin); printf("동전 교환중...\n"); c500 = coin/500; //500 원 짜리 동전 개수 coin = coin%500; //500 원으로 나눈 후 나머지 금액 c100 = coin/100; //100 원 짜리 동전 개수 coin %= 100; //100 원으로 나눈 후 나머지 금액 c50 = coin/50; //50 원 짜리 동전 개수 coin %= 50; //50 원으로 나눈 후 나머지 금액 c10 = coin/10; //10 원 짜리 동전 개수 coin %= 10; //10 원으로 나눈 후 나머지 금액 = 1 원 짜리 동전 개수 printf("오백 원 짜리 동전 : %d개\n", c500); printf("백 원 짜리 동전 : %d개\n", c100); printf("오십 원 짜리 동전 : %d개\n", c50); printf("십 원 짜리 동전 : %d개\n", c10); printf("일 원 짜리 동전 : %d개\n", coin); return 0; }
다음은 출력 결과입니다.
사용자가 동전을 교환할 금액을 입력하면,
입력받은 금액에 500으로 나눈 몫(500 원 짜리 동전 개수)을 c500에 저장합니다.
500으로 나눈 나머지 금액에 100으로 나눈 몫(100 원 짜리 동전 개수)을 c100에 저장합니다.
100으로 나눈 나머지 금액에 50으로 나눈 몫(50 원 짜리 동전 개수)을 c50에 저장합니다.
50으로 나눈 나머지 금액에 10으로 나눈 몫(10 원 짜리 동전 개수)을 c10에 저장합니다.
10으로 나눈 나머지 금액(1원 짜리 동전 개수)에 coin에 저장합니다.
최종적으로 출력하면 입력받은 금액을 각 동전의 개수로 환산한 결과 값을 확인할 수 있습니다.
'Code.D IT 프로젝트 > C언어' 카테고리의 다른 글
[C언어 문제] 구구단 내림차순 출력 (0) | 2017.06.02 |
---|---|
[C언어 문제] 중첩 for문을 이용한 구구단 출력 (0) | 2017.06.01 |
[C언어 문제] 시, 분, 초로 계산하는 프로그램 (0) | 2017.05.31 |
[C언어] 윤년 계산기 (0) | 2017.05.30 |
[C언어] 산술 연산 계산기 (0) | 2017.05.29 |