【算法】求最小公倍数

2015-03-11 06:20:47 -0400
几个数共有的倍数叫做这几个数的公倍数,其中除1以外最小的一个公倍数,叫做这几个数的最小公倍数。例如4和5的最小公倍数为20。
代码实现如下:
#include <stdio.h>
int zxgbs(int ,int );
int main(void)
{
printf("%d",zxgbs(4,5));
return 0;
}

/**
*最小公倍数的求法
*@a 数1
*@b 数2
*/
int zxgbs(int a, int b)
{
int max=a;
int min=b;
int n=0;//倍数
int zxgbs;
if(b>max){
max=b;
min=a;
}
while(++n)
{
//大数翻倍法求最小公倍数
//把大数x1,x2,x3....直到可以除尽小的那个数
if ( (max*n)%min==0)
{
zxgbs=max*n;
break;
}
}
return zxgbs;
}
输出:20
算法原创,如发现错误,欢迎指出。
«Newer      Older»

----Comments(2)----
落叶似秋 (@zyw8) | @ at 2015-03-11 08:55:
@csngmap 是呀,最近在练一些简单的算法
csngmap (@csngmap) | @ at 2015-03-11 08:36:
学以致用啊
Comment:
Name:

Back to home

Subscribe | Register | Login | 中文 | N