# C 언어 약수 구하기 문제

 

 

## 약수 구하기 

 

표준 입력으로 한 개의 정수를 입력 받습니다. 1부터 입력 받은 정수까지 반복하면서 입력 받은 정수의 약수를 출력하는 프로그램을 만드세요.

 

테스트 케이스 예제

 

표준 입력

 

```Output

10

```

 

표준 출력

 

```Output

 1은(는) 10의 약수입니다.

 2은(는) 10의 약수입니다.

 5은(는) 10의 약수입니다.

10은(는) 10의 약수입니다.

```

 

***divisor_docs.c***

 

#define _CRT_SECURE_NO_WARNINGS // scanf() 보안 경고에 따른 컴파일 에러 방지

#include <stdio.h>



int main(void)

{

    int divisor;



    scanf("%d", &divisor);



    for (int i = 1; i <= divisor; i++)

    {

        if (divisor % i == 0)

        {

            printf("%2d은(는) %2d의 약수입니다.\n", i, divisor);

        }

    }



    return 0;

}

 

```Output

12

 1은(는) 12의 약수입니다.

 2은(는) 12의 약수입니다.

 3은(는) 12의 약수입니다.

 4은(는) 12의 약수입니다.

 6은(는) 12의 약수입니다.

12은(는) 12의 약수입니다.

```

 

```Output

15

 1은(는) 15의 약수입니다.

 3은(는) 15의 약수입니다.

 5은(는) 15의 약수입니다.

15은(는) 15의 약수입니다.

```

 

나머지 연산자인 `%` 연산자를 사용하면 특정한 수의 약수를 구할 수 있습니다. 1부터 입력한 수까지 반복을 하면서 인덱스 변수를 나누었을 때 나머지가 0이면 즉, 나누어 떨어지면 해당 인덱스 변수는 입력한 수의 약수가 됩니다.

 

이처럼 `%` 연산자를 사용하면 배수, 약수, 공배수 등을 편리하게 구할 수 있습니다.

 

Comments


Comments are closed