0%

最小公倍数

求最小公倍数

参考网上的方法,并做改进。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <stdio.h>
#include <stdlib.h>

int main(int argc,char **argv)
{
if(argc!=3)
{
printf("argc count error\n");
return 0;
}

int n1=atoi(argv[1]),n2=atoi(argv[2]);
int minMultiple;

minMultiple = (n1>n2) ? n1 : n2;

while(1)
{
if( minMultiple%n1==0 && minMultiple%n2==0 )
{
printf("%d 和 %d 的最小公倍数为 %d\n", n1, n2,minMultiple);
break;
}
++minMultiple;
}

/****************************************************/
//下面是改进的方法
int count=1,big=(n1>n2) ? n1 : n2;
minMultiple = big;
while(1)
{
if( minMultiple%n1==0 && minMultiple%n2==0 )
{
printf("%d 和 %d 的最小公倍数为 %d\n", n1, n2,minMultiple);
break;
}
minMultiple+=big;
}

return 0;
}