■ 개발관련 ■/산수와 알고리즘

최대공약수, 최소공배수

serpiko 2013. 11. 15. 15:35

   최대공약수, 최소공배수


재귀함수를 이용한 최대공약수와 최소공배수 공식을 알아보자.


최대공약수 : 두 값을 나누는 나머지 값이 0이 될때까지 계속 나누고 두번째 값과 두 수의 나머지를 다시 재귀적으로 호출한다.


최소공배수 : 최대공약수를 구한 다음 첫 번째 수를 최대공약수로 나누고 여기에 두 번째 수를 곱해서 구한다.

 

function calGCD(value1:int, value2:int):int{
	if(value2 == 0) return value1;
	else
	return calGCD(value2, value1 % value2);
}
trace("최대공약수: "+calGCD(24,36)); //12

function calLCM(value1:int, value2:int):int{
	var temp:int = calGCD(value1, value2);
	return ( value1 / temp ) * value2;
}

trace("최소공배수: "+calLCM(24,36)); //72