본문으로 바로가기

[C언어] 최대공약수

category 알고리즘 2020. 10. 16. 22:23

문제> 100이하의 두 자연수 A, B가 입력되면 두 자연수의 최대공약수를 출력하는 프로그램을 작성하세요.

  • 입력설명
    첫 번째 줄에 100이하의 자연수 A, B가 입력된다.

  • 출력설명
    첫 번째 줄에 최대공약수를 출력한다.

#include<stdio.h>

int main()
{
    int a, b, i, min;
    scanf("%d %d",&a, &b);

    //두 수 중 누가 더 작을지 비교해서 min에다가 값 대입 
    if(a < b) min = a;
    else min = b;

    //i는 min부터 1까지 반복 
    for(i = min; i >= 1; i--) {
        //a의 약수와 b의 약수가 같으면 i를 출력 
        if(a % i == 0 && b % i == 0){
            printf("%d\n",i);
            break;    
        }  
    }

    return 0;
}


'알고리즘' 카테고리의 다른 글

[C언어] 동물의 수 구하기  (0) 2020.10.20
[C언어] 소수 판별하기  (0) 2020.10.16