最大公约数and最小公倍数

≡放荡痞女 提交于 2019-12-23 01:45:57

求最小公倍数算法:

最小公倍数=两整数的乘积÷最大公约数

求最大公约数算法:

(1)辗转相除法

有两整数a和b:

① a%b得余数c

② 若c=0,则b即为两数的最大公约数

③ 若c≠0,则a=b,b=c,再回去执行①

例如求27和15的最大公约数过程为:

27÷15 余12 15÷12余3 12÷3余0 因此,3即为最大公约数

#include<stdio.h>
int f1(int a,int b){
while(a%b!=0){
int  t=a%b;
    a=b;
    b=t;
}
return b;
}
int f2(int a, int b){
return a*b/f1(a,b);
}
int main(){
int a,b,c,t;
scanf("%d%d",&a,&b);
printf("%d\n%d",f1(a,b),f2(a,b));
return 0;
}

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!