| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1529 人关注过本帖
标题:为什么这个函数算最大公约数老是不对 为什么?
只看楼主 加入收藏
FOR_LIVE
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2004-9-29
收藏
 问题点数:0 回复次数:11 
为什么这个函数算最大公约数老是不对 为什么?
main()

{  int m,n,max,min;

   int funmin(int x,int y); /*求最小公倍数*/

   int funmax(int x,int y);/* 求最大公约数*/

   printf("nvalure m and n:");

   scanf("%d%d",&m,&n);

   printf("\n max=%d,min=%d",funmax(m,n),funmin(m,n));

getch();

}

 funmin(int x,int y)   /*求最小公倍数*/

{  int i,max;

   max=x<y?y:x;

   for(i=max;i<=x*y;i++)

     if(i%x==0&&i%y==0)

       {return(i);break;}

}

 funmax(int x,int y)  /* 求最大公约数*/

{  int j,temp;

   temp=x>y?y:x;

   for(j=temp;j<=1;j--)

      if(y%j==0||x%j==0)

       { return(j);

       break; }



}
搜索更多相关主题的帖子: 函数 最大公约数 
2004-12-01 12:11
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
收藏
得分:0 

这个是 完整的程序吗??

不是吧~~~ 把 完整的 发上来啊~~(是不是 抄书的啊)


2004-12-01 12:25
jeremydomett
Rank: 2
等 级:新手上路
威 望:3
帖 子:312
专家分:0
注 册:2004-6-10
收藏
得分:0 
你可以根据最小公倍数来求...

热爱编程........永不放弃.........
2004-12-01 16:05
workhard
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2004-11-17
收藏
得分:0 

for(j=temp;j>=1;j--)

if(y%j==0&&x%j==0)


2004-12-01 17:11
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

我记得上次不是已经解决了吗!!我找找!!


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-12-01 22:40
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

晕了。我看还是我写一下:

int funmin(int x,int y) { int nmin;

nmin=x>y?x:y; for(;;) { if(nmin%x==0 && nmin%y==0) return nmin; else nmin++; } }

int funmax(int x,int y) { int nmax;

nmax=x<y?x:y; for(;;) { if(x%nmax==0 && y%nmax==0) return nmax; else nmax--; } }

[此贴子已经被作者于2004-12-01 22:52:56编辑过]


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-12-01 22:51
FOR_LIVE
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2004-9-29
收藏
得分:0 
好了!!谢谢各位了!!!!!
2004-12-01 22:55
wnpl1
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-12-11
收藏
得分:0 
main()
{int a,m,n,sum=0;
printf("input m.n");
scanf("%d.%d",&n,&m);
for(a=1;a<=(m>n)?n:m;a++)
if(m%a==0&&n%a==0)sum=a;
printf("%d",sum);}
2005-12-11 13:56
lihuiyi
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-12-14
收藏
得分:0 
2005-12-14 07:11
zxyliwei
Rank: 1
等 级:新手上路
帖 子:88
专家分:0
注 册:2005-12-6
收藏
得分:0 

#include<stdio.h>
int funmin(int x,int y); /*求最小公倍数*/
int funmax(int x,int y);/* 求最大公约数*/
void main()
{ int m,n;

printf("nvalure m and n:");
scanf("%d%d",&m,&n);
printf("\n max=%d,min=%d",funmax(m,n),funmin(m,n));

}
int funmin(int x,int y) /*求最小公倍数*/
{ int i,max,a;
max=x<y?y:x;
for(i=max;i<=x*y;i++)
if(i%x==0&&i%y==0)
{a=i;break;}
return a;
}
int funmax(int x,int y) /* 求最大公约数*/
{ int j,temp,h;
temp=x>y?y:x;
for(j=temp;j>=1;j--)
if(y%j==0&&x%j==0)
h=j;
return h;
}


醒逍遥;醉也逍遥!
2005-12-16 14:15
快速回复:为什么这个函数算最大公约数老是不对 为什么?
数据加载中...
 
   



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

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