Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

최대공약수/김태훈zyint

From ZeroWiki
Revision as of 05:31, 7 February 2021 by imported>Unknown
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

소 감

일단 문제만 보고 풀었는데 처음부터 call by value 로 짰다 ㄱ-;; 아영이꺼 보니 while문하구 함수쓰는거랑 따로따로하는 거였다..; 결국 ver2로만 완성;;

소스

#include <stdio.h> 

void swap(int* x,int* y);
int gcd(int a, int b);

int main()
{
	int x,y;

	// x, y값을 입력 받는다.
	printf("x = "), scanf("%d",&x);
	printf("y = "), scanf("%d",&y);

	// GCD를 출력한다.
	printf("GCD is %d\n",gcd(x,y));

	return 0;
}

int gcd(int a, int b)
{
	//a>b로 바꾼다.
	if( a < b ) swap(&a,&b);

           // 0으로 나누기 방지
	if(b==0) return a; 

           //재귀 
	if(gcd(b, a % b) == 0) 
		return a % b;
	else
		return gcd(b, a % b);
}

void swap(int* x,int* y)
{
	int tmp;

	tmp = *x;
	*x = *y;
	*y = tmp;

}

나한테 할 말


최대공약수 LittleAOI