2009~2014/C/C++
[C언어 기출문제&풀이] 최대공약수
malu
2011. 5. 13. 17:57
문제: 두 개의 양의 정수가 주어졌을 때 그 두 수의 최대공약수를 구하여라
풀이: 유클리드 알고리즘을 사용한다. 아... 원래 풀이 다 써봤으나 합동식과 기호를 구분하여 적을 수가 없어서 유클리드 알고리즘에 관해서는 지식인에 유클리드 알고리즘을 알아보거나 소스코드가 아주 간단하기 때문에 그냥 봐도 이해가 갈 것이다.
#include <stdio.h>
int gcd(int a, int b); // int gcd(int, int);
int main()
{
int a,b;
scanf("%d%d",&a,&b);
gcd(a,b);
}
int gcd(int a,int b)
{
if(a%b==0)
{
printf("최대공약수 : %d\n",b);
return 0;
}
else gcd(b,a%b);
}