一起talk C栗子吧(第十回:C语言实例--最小公倍数)
各位看官们,大家好,从今天开始,我们讲大型章回体科技小说 :C栗子,也就是C语言实例。闲话休提, 言归正转。让我们一起talk C栗子吧!
看官们,上一回中咱们说的是最大公约数的例子,这一回咱们说的例子是:最小公倍数。
看官们,最小公倍数和最大公约数类似。两个整数中的公倍数有好多个,这些公约数中最小的一个就叫作 最小公倍数。当然了,这是数学中的一个概念,如果不明白了,可以查阅相关的数学知识。
最小公倍数的求法有好几种,最常用的是通过最大公约数来求。因为两个数的最大公约数乘以它们的最小 公倍数等于这两个数的积。所以通常先求出两个数的最大公约数,然后用两个数的积除以它们的最大公约 数就得到了它们的最小公倍数。
看官们,详细的代码如下,请大家参考:
1
2 /* **************************
3 * For Least Common Multiple
4 * *************************/
5 #include<stdio.h>
6
7 int main()
8 {
9 int a,b,gcd,temp,ta,tb;
10 int mod,res,lcm;
11 a = b = gcd = temp = ta = tb = mod = res = lcm = 0;
12
13 printf("Please input 2 number for get the LCM of them .\n");
14 scanf("%d %d",&a,&b);
15 if(a <0 || b < 0)
16 {
17 printf("bad input number \n");
18 return 0;
19 }
20
21 if(a < b)
22 {
23 temp = a;
24 a = b;
25 b = temp;
26 }
27
28 ta = a;
29 tb = b;
30 mod= a % b;
31 while(mod != 0)
32 {
33 ta = tb;
34 tb = mod;
35 mod = ta % tb;
36 }
37
38 lcm = (a * b)/tb; // a和b 积除以gcd等于lcm
39 printf("the LCM of %d and %d is:%d \n",a,b,lcm);
40
41 return 0;
42 }
43
各位看官,关于最小公倍数的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解。
上一篇: 第九回:C语言实...
下一篇: 第十一回:C语言...