포인터를 이용해서 최소공배수 최대공약수 두 반환값을 반환하는 함수인데 자꾸 에러가 뜹니다 ㅠㅠ
글쓴이: kykk0010 / 작성시간: 토, 2014/12/27 - 1:54오전
#include
void get_lcm_gcd(int x, int y, int *p_lcm, int *p_gcd);
int main(void)
{
int x,y;
int a,b;
printf("Input the x :");
scanf("%d",&x);
printf("Input the y :");
scanf("%d",&y);
get_lcm_gcd(x,y,&a,&b);
printf("%d,%d",a,b);
return 0;
}
void get_lcm_gcd(int x, int y, int *p_lcm, int *p_gcd) \\최대공약수 최소공배수 함수 구하기
{
int r;
while(y!=0)
{
r = x%y;
x = y;
y = r;
}
*p_gcd = r;
*p_lcm = (x*y)/r;
}
디버깅은 되는데 계속해서 실행했을 때 에러가 뜹니다 ㅠㅠ 어떻게 된건지 제 머리로는 도저히 ㅠㅠ
Forums:
x%y 가 0일때는 *p_lcm에 저장되는 값이
x%y 가 0일때는 *p_lcm에 저장되는 값이 division by 0 가 되어 에러가 나지 않을까요?
알고보면 쉬운걸 ㅠㅠㅠ 감사합니다!!
알고보면 쉬운걸 ㅠㅠㅠ 감사합니다!!
댓글 달기