Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

기본 유클리드 알고리즘을 위한 C 프로그램?

<시간/>

여기서 우리는 두 숫자의 GCD를 찾는 유클리드 알고리즘을 볼 것입니다. GCD(최대공약수)는 유클리드 알고리즘을 사용하여 쉽게 찾을 수 있습니다. 두 가지 다른 접근 방식이 있습니다. 하나는 반복적이며 다른 하나는 재귀적입니다. 여기서 우리는 재귀적 유클리드 알고리즘을 사용할 것입니다.

알고리즘

유클리드 알고리즘(a, b)

begin
   if a is 0, then
      return b
   end if
   return gcd(b mod a, a)
end

예시

#include<iostream>
using namespace std;
int euclideanAlgorithm(int a, int b) {
   if (a == 0)
      return b;
   return euclideanAlgorithm(b%a, a);
}
main() {
   int a, b;
   cout << "Enter two numbers: ";
   cin >> a >> b;
   cout << "GCD " << euclideanAlgorithm(a, b);
}

출력

Enter two numbers: 12 16
GCD 4