求最大公约数 和 最小公倍数 常见算法

Posted Timeashore

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求最大公约数 和 最小公倍数 常见算法相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
int main()
{
int a,b,t,c,m,n;
scanf("%d%d",&a,&b);
m=a; n=b;


//1.辗转相除法求最大公约数
/*while(b!=0)
{
c = a%b;
a = b;
b = c;
}
printf("最大公约数: %d\n",a);//最大公约数
printf("最小公倍数: %d\n",m*n/a);//最小公倍数
*/

 

 


//2.相减法。大数减小数,直到相等为止*/
/*
while(a != b)
{
if(a>b)
a = a-b;
else
b = b-a;
}
printf("最大公约数: %d\n",a);//最大公约数 a 和 b相等
printf("最小公倍数: %d\n",m*n/a);//最小公倍数
*/

 

 

//3.穷举法求最大公约数(不用判断大小!)
/*
for(t=a;t>0;t--)
{
if(a%t==0 && b%t==0)
break;
}
printf("最大公约数: %d\n",t);
printf("最小公倍数: %d\n",a*b/t);
*/

 


//多个数的最大公约数和最小公倍数
/*
例子:
for (i= a; i>0; i-- )
if (a%i==0&&b%i==0&&c%i==0) break;
printf("最大公约数: %d\n", i);
for (i= a; ; i++ )
if (i%a==0&&i%b==0&&i% c==0) break;
printf("最小公倍数: %d\n", i )
*/


return 0;
}

以上是关于求最大公约数 和 最小公倍数 常见算法的主要内容,如果未能解决你的问题,请参考以下文章

编写两个函数,分别求最大公约数和最小公倍数python

算法---最小公倍数和最大公约数

算法---最小公倍数和最大公约数

求最大公约数的算法以及最小公倍数

使用c++求最大公约数与最小公倍数

动画笔记辗转相除法——求最大公约数和最小公倍数