【资料图】

导读

有两种方法     :  1。先把x,y这两个数分解质因数 x=2^a·3^b·5^c… , y=2^m·3^n ·5^p… 最大公约数取x和y的公共的且次数最小的质因数想乘 最小公倍数取x和y的公共的且次数最大的质因数想乘,再乘以不公共的质因数 比如求12和30的最大公约数和最小公倍数: 12=2^2×3 , 30=2×3×5 最大公约数=2×3=6, 最小公倍数=2^2×3×5=60

2.用辗转相除的数学思想。 main() { int m,n,r; /*r表示余数,设m>n*/ int min,max; /*min表示最小公倍数,max表示最大公约数 */ scanf("%d,%d",&m,&n); max=m*n; while(r=m%n) {m=n; n=r; } min=r; max=max/r;

本文到此讲解完毕了,希望对大家有帮助。

免责声明:本文由用户上传,如有侵权请联系删除!

推荐内容