两个数||多个数最小公倍数

最小公倍数算法

View Code
 1 View Code 
 2  /*两个数的最小公倍数*/
 3  #include<stdio.h>
 4  int main()
 5  {
 6   int t,x,y,r,p,b;
 7   scanf("%d",&t);
 8   while(t--)
 9   {
10    scanf("%d%d",&x,&y);
11    if(x==0||y==0)
12    {
13        b=0;break;
14    }
15    if(x<y)
16    {
17     p=x;x=y;y=p;
18    }
19 
20    b=x;
21    while(b%y!=0)
22    {
23     b=b+x;
24    }
25    printf("%d\n",b);
26   }
27   return 0;
28  }
29  /*
30  1
31  2 5
32  10
33  */
34  
35  /*多个数的最小公倍数*/
36  #include<stdio.h>
37  int power(int x,int y)
38  {
39   int b,t;
40   if(x<y)
41   {
42    t=x;x=y;y=t;
43   }
44   b=x;
45   while(b%y!=0)
46   {
47    b=b+x;
48   }
49   return b;
50  }
51  int main()
52  {
53   int s,n,i,t;
54   while(scanf("%d",&n)!=-1)
55   {
56    t=1;
57    for(i=1;i<=n;i++)
58    {
59     scanf("%d",&s);
60     if(s==0)//当数字中有零时,要格外考虑
61     {
62         t=0;break;
63     }
64     t=power(s,t);
65    }
66    printf("%d\n",t);
67   }
68   return 0;
69  }
70  /*
71  3
72  2 5 7
73  70
74  */

 

posted @ 2012-07-07 16:28  zlyblog  阅读(163)  评论(0编辑  收藏  举报