< [C언어] 최대 공약수와 최소 공배수 구하기

프로그래밍 공부/C

[C언어] 최대 공약수와 최소 공배수 구하기

Rocketbabydolls 2020. 1. 28. 23:17

#include <stdio.h>
void gcdlcm(int x,int y,int *px,int *py){
int max,min;

if (x>y){
for(int i=1;i<=y;i++){
if(y%i==0&&x%i==0) max=i; 
}
for(int j=y;;j++){
if(j%y==0&&j%x==0) {
min=j;
break;
}
}
}
else {
for(int i=1;i<=x;i++){
if(y%i==0&&x%i==0) max=i; 
}
for(int j=x;;j++){
if(j%y==0&&j%x==0) {
min=j;
break;
}
}

}

*px=max;
*py=min;

}
 
int main(){
int x,y;

scanf("%d %d",&x,&y);
gcdlcm(x,y,&x,&y);
printf("%d %d",x,y);

return 0;
}