문제
C 프로그래밍 언어의 재귀 함수를 사용하여 주어진 두 숫자에 대한 최대공약수(GCD)를 구합니다.
해결책
재귀 함수를 사용하여 주어진 두 숫자에 대한 최대 공약수(GCD)를 찾는 솔루션은 다음과 같습니다. -
알고리즘
재귀 함수를 사용하여 주어진 두 숫자에 대한 최대 공약수(GCD)를 찾으려면 아래 주어진 알고리즘을 참조하십시오.
1단계 − 재귀 함수를 정의합니다.
2단계 − 두 정수 b를 읽습니다.
3단계 − 재귀 함수를 호출합니다.
a. if i>j b. then return the function with parameters i,j c. if i==0 d. then return j e. else return the function with parameters i,j%i.
순서도
재귀 함수를 사용하여 주어진 두 숫자에 대한 최대 공약수(GCD)를 찾는 알고리즘에 대한 순서도가 아래에 나와 있습니다.
예시
다음은 재귀 함수를 사용하여 주어진 두 숫자에 대한 최대공약수(GCD)를 구하는 C 프로그램입니다. -
#include<stdio.h> #include<math.h> unsigned int GCD(unsigned i, unsigned j); int main(){ int a,b; printf("Enter the two integers: \n"); scanf("%d%d",&a,&b); printf("GCD of %d and %d is %d\n",a,b,GCD(a,b)); return 0; } /* Recursive Function*/ unsigned int GCD(unsigned i, unsigned j){ if(j>i) return GCD(j,i); if(j==0) return i; else return GCD(j,i%j); }
출력
위의 프로그램을 실행하면 다음과 같은 결과가 나온다 -
Enter the two integers: 4 8 GCD of 4 and 8 is 4