Home > Study > C Language > C Example > [ex63] 알밤만 담는 바구니

[ex63] 알밤만 담는 바구니
Study Language

문제 설명


최대 10개를 담을 수 있는 알밤 바구니에 알밤들을 담으려 한다
공백으로 분리된 정수 m, n을 입력 받는다
m이 n보다 크거나 m이 음수거나 n이 음수일 경우는 “Error”를 출력하고 종료한다
m ~ n 범위의 수 중에서 다음 조건의 알밤을 저장 한다. (주의) n도 포함 된다
알밤은 3과 5의 공통 배수(15의 배수로 찾지 말고)이고 그 외는 다 쭉정이로 판단한다
바구니는 배열 10개 짜리를 설계하고 알밤을 발견할 때마다 값을 추가한다
단, 알밤은 최대 10개까지만 담을 수 있으며 10개를 담으면 바구니에 저장을 종료해야 한다
바구니에 담긴 알밤 수를 인쇄하고 다음 줄에 공백으로 분리하여 값들을 인쇄한다
단, 알밤이 10개보다 적을 수도 있으며 이 경우 저장된 알밤 값들만 인쇄되어야 한다

#include <stdio.h>

void main(void)
{
	// 코드 작성
}

입력 예시


1 50

출력 예시


3
15 30 45

정답 코드


#include <stdio.h>
int a[10];

void main(void)
{
	int i, m, n, cnt = 0;

	scanf("%d %d", &m, &n);
	if (m > n || m < 0 || n < 0) 
	{
		printf("Error\n");
		return;
	}

	for (i = m; i <= n; i++)
	{
		if (((i % 3) == 0) && ((i % 5) == 0))
		{
			a[cnt] = i;
			cnt++;
			if (cnt == 10) break;
		}
	}

	printf("%d\n", cnt);
	for (i = 0; i < cnt; i++)
	{
		printf("%d ", a[i]);
	}
}

메모


printf 내부의 \n 습관화 필요