(C언어)프로젝트 오일러(Project Euler) 5. 1 ~ 20 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수

문제

1 ~ 10 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 2520입니다.

그러면 1 ~ 20 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 얼마입니까?

코드

#include <stdio.h>

int main(void)
{
    int x = 21, res = 0;

    while (1)
    {
        if (x % 2 == 0
            && x % 3 == 0
            && x % 4 == 0
            && x % 5 == 0
            && x % 6 == 0
            && x % 7 == 0
            && x % 8 == 0
            && x % 9 == 0
            && x % 10 == 0
            && x % 11 == 0
            && x % 12 == 0
            && x % 13 == 0
            && x % 14 == 0
            && x % 15 == 0
            && x % 16 == 0
            && x % 17 == 0
            && x % 18 == 0
            && x % 19 == 0
            && x % 20 == 0)
        {
            res = x;
            break;
        }
        else x++;
    }

    printf("%d\n", res);

    return 0;
}

이렇게 1에서 20까지 하나하나 나머지연산을 시행하며 조건을 판단하는 방법밖에 생각나지 않았다.

결과는 232792560이 나온다.