본문 바로가기
코드업(codeup)/C

[코드업(codeup)/C]코드업(codeup) 2011 : 369 게임 2 C언어

by starfish22 2021. 12. 31.
728x90

▶문제 : 369 게임 2 (codeup.kr)

 

369 게임 2

시작 수(a)와 마지막 수(b)가 입력되면 그 범위의 369게임의 올바른 답을 출력하시오. ※ 369게임의 룰은 다음과 같다. 1. 시작수와 마지막수까지의 369게임의 올바른 답을 출력한다. 2. 한 줄에 하나

codeup.kr

 

▶코드 작성

#include <stdio.h>

int main()
{
    int a, b, cnt;

    scanf("%d %d", &a, &b);

    for (int i = a; i <= b; i++)//a부터 b까지 반복
    {
        cnt = 0;//반복할 때 마다 개수 초기화
        for (int temp = i; temp != 0; temp /= 10)
        {//i값을 temp에 대입해 0이 될 때 까지 10으로 나눔
            if ((temp % 10) % 3 == 0 && (temp % 10) != 0)//3의 배수고 0이 아닐 때
            {
                cnt++;
                printf("K");//K출력
            }
        }
        if (cnt == 0) printf("%d", i);//3의 배수가 없었다면 i출력
        printf("\n");
    }

    return 0;
}

 

▶해석

반복문으로 a에서 b까지 반복하고, 3의 배수일 때 개수를 cnt로 하여 반복할 때마다 0으로 초기화해준다. 2중 반복문으로 i값 중에 3의 배수가 있는지 판단하여 cnt++하고 K를 출력하였다. 만약 3의 배수가 없다면 cnt==0이므로 i를 출력해주었다.

728x90

댓글