C 언어의 기본4

4. 3500원을 알차게 쓰자.

(크림빵 : 500원, 새우깡 : 700원, 콜라 : 400원 => 최소한 하나는 살 것)

#include <stdio.h>

int main(void)
{
	int m = 3500;
	int b = 500, s = 700, c = 400;

	for (int i = 1; i <= (m-s-c)/b; i++)
	{
		for (int j = 1; j <= (m-b-c)/s; j++)
		{
			for (int k = 1; k <= (m-b-s)/c; k++)
			{
				if (i * b + j * s + k * c == m)
				{
					printf("빵 %d, 과자 %d, 콜라 %d \n", i, j, k);
					continue;
				}
			}
		}
	}
    
	return 0;
}

i : 빵 개수 / j : 새우깡 개수 / k : 콜라 개수
돈은 메인으로 살 것을 빼고 나머지를 1개씩 샀다는 가정을 한 가격이다.
for문이 겹친 게 좋은 것도 아닌데 돌아가는 변수 크기를 최대한 줄이기 위해 미리 빼서 계산을 했다.

좋은 웹페이지 즐겨찾기