您的位置首页生活百科

输入两个正整数m和n,求其最大公约数和最小公倍数

#include<顷缓stdio.h>

int main(){

int a,b,num1,num2,temp;

printf("please input two number:\n");

scanf("%d%d",&num1,&num2);

if(num1<num2){

temp = num1;

num1 = num2;

num2 = temp;

}

a = num1;

b = num2;

while(b!=0){

temp = a%b;

a=b;

b=temp;

}

printf("gongyueshu:%d\n",a);

printf("雀迅模gongbeishu:%d\n",num1*num2/a);

}

输入两个正整数m和n,求其最大公约数和最小公倍数

扩展资料:

两个整数的最大公约数主要有两种寻找方法:

* 两数各分解质因数,然后取出同样有的质因数乘起来

*辗转相除法(扩展版)

最小公倍数(lcm)的关系:

gcd(a, b) * lcm(a, b) = ab

a与b有最大公约数,

两个整数的最大公因子可用于计算两数的最小公倍数,或分数化简成最简分数

两个整昌昌数的最大公因子和最小公倍数中存在分配律:

* gcd(a, lcm(b, c)) = lcm(gcd(a, b), gcd(a, c))

* lcm(a, gcd(b, c)) = gcd(lcm(a, b), lcm(a, c))

在坐标里,将点(0, 0)和(a, b)连起来,通过整数坐标的点的数目(除了(0, 0)一点之外)就是gcd(a, b)。