| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 581 人关注过本帖
标题:[求助]有一点点小小的问题!
只看楼主 加入收藏
Teamwolves
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2005-5-2
收藏
 问题点数:0 回复次数:7 
[求助]有一点点小小的问题!

// 求N个正整数的最小公倍数。 #include<stdio.h> int GCD(int x,int y); //X,Y的最大公约数 int LCM(int x,int y); // X,Y的最小公倍数 int main() { int n,m,*array,i,j; scanf("%d",&n); while(n) { scanf("%d",&m); array = new int[m]; for(i=0;i<m;i++) scanf("%d",&array[i]); ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// for(j=0;j<m-1;j++) //问题可能出现在这里 { array[j+1]=LCM(array[j],array[j+1]); //我是通过两两求最小公倍数从而求得多个数的最小公倍数 } ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// printf("%d\n",array[m-1]); n--; } return 0; }

int GCD(int x,int y) //X,Y的最大公约数 { int z; if(x>y) { z=x; x=y; y=z; } while((z=y%x)!=0) { y=x; x=z; } return z; }

int LCM(int x,int y) // X,Y的最小公倍数 { int z; z=(x*y)/GCD(x,y); return z; }

[此贴子已经被作者于2005-7-18 17:19:57编辑过]

搜索更多相关主题的帖子: 小小的 
2005-07-18 16:32
georgezf
Rank: 1
等 级:新手上路
帖 子:275
专家分:0
注 册:2004-11-20
收藏
得分:0 
x,y,z好多呀。。。。。眼睛花了。。。。。。

2005-07-18 16:39
Teamwolves
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2005-5-2
收藏
得分:0 
x,y是两个参数,在GCD()里Z代表最大公约数,LCM()Z代表最小公倍数!

http://ruiquan.
2005-07-18 16:42
Teamwolves
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2005-5-2
收藏
得分:0 
没人看一下吗?????

http://ruiquan.
2005-07-18 17:20
Teamwolves
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2005-5-2
收藏
得分:0 
找出来了,原来GCD(x,y)的返回值搞错了


int GCD(int x,int y)  //X,Y的最大公约数
{
int z;
if(x&gt;y)
{
  z=x;
  x=y;
  y=z;
}
while((z=y%x)!=0)
{
  y=x;
  x=z;
}
return x;            //应该返回x才对
}

http://ruiquan.
2005-07-18 17:37
georgezf
Rank: 1
等 级:新手上路
帖 子:275
专家分:0
注 册:2004-11-20
收藏
得分:0 
呵呵,祝贺~~~

2005-07-18 19:43
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 
编程质量忠告:楼主别忘了在程序最后释放分配的array,delete []array;避免指针悬挂。

我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2005-07-18 20:32
zzb_ks
Rank: 1
等 级:新手上路
帖 子:63
专家分:0
注 册:2005-7-6
收藏
得分:0 
好像你这样的循环求不出来最大的什么公约数或最小的什么公倍数吧,你只是求出了相邻的两个,而不相邻的你就没有计算。
现在忘记了最大什么公约数和最小什么公倍数是什么意思了。抱歉,抱歉!!!!

2005-07-19 19:32
快速回复:[求助]有一点点小小的问题!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040947 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved