最小公倍数算法
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 */