| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 502 人关注过本帖
标题:[求助]习题的问题,大家看看
只看楼主 加入收藏
nick7281
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-11-13
收藏
 问题点数:0 回复次数:6 
[求助]习题的问题,大家看看
输入2个正整数M和N, 求其最大公约数和最小公倍数。
我的思路不是很清晰。
#include<stdio.h>
void main()
{
int m, n, i, j, x, y, max;
printf("Please enter 2 numbers: \n");
scanf("%d %d", &m, &n);
if (m<n)
{
for (i = m, x = n%i; i > 0, x != 0; i--)//这里我是想用n来和较小的m来求比m小的一个能够被n整除的数
{
for (j = i, y = m%j; j > 0, y != 0; j--)//在这里再用上面求到的这个数和m来除,求得最大公约数
max = j;
}//但是跳出循环有问题啊,不能在我要求的情况下跳出循环
}
else
{
for (i = n, x = m%i; i > 0, x != 0; i--)
{
for (j = i, y = n%j; j > 0, y != 0; j--)
max = j;
}//
}
printf("这2个数的最大公约数是:%d\n", max);
}
这里只做了最大公约数的部分,大家帮忙看看,帮我重新写一个来借鉴一下也可以,谢谢了
搜索更多相关主题的帖子: 习题 
2007-02-09 13:03
pc新手
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2007-1-28
收藏
得分:0 

路过,顶上


不进则退
2007-02-09 13:19
没牙的狼
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-4-23
收藏
得分:0 

算法一(辗转相除):
f1(x,y)
{
a=x;b=y;
t=a%b;
if(t!=0)
{
a=b;b=t;t=a%b;
}
printf("%d\n",b); /*最大公约数*/
printf("%d\n",x*y/b); /*最小公倍数*/
}

算法二(辗转相减):
f2(x,y)
{
a=x;b=y;
while(a!=b)
{
if(a>b)
a=a-b;
else
b=b-a;
}
printf("%d\n",a); /*最大公约数*/
printf("%d\n",x*y/a); /*最小公倍数*/
}
这是我看别人写的一个程序,但其中数学运算思想我不是很懂..


2007-02-09 15:56
yangxu0703
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-1-15
收藏
得分:0 

这是我写的,最小公倍数的程序代码...

新手,请指教...
#include<stdio.h>
main()
{ int a,b,c,i,j;

printf("please input two number\n");
scanf("%d%d",&a,&b);
if(a-b>0)

c=a;
else
c=b;


for(i=c;i<1000;i++)
{
if(i%a==0 && i%b==0)
{
j=i;

printf("gong bei shu is%d\n",j);
break;
}
}

};

2007-02-09 20:18
没牙的狼
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-4-23
收藏
得分:0 

#include<stdio.h>
main()
{ int a,b,c,flag;
printf("please input two number\n");
scanf("%d%d",&a,&b);
if(a-b>0)

c=a;
else
c=b;

while(flag)
{
if(c%a==0 && c%b==0)
{
flag=0;
printf("gong bei shu is:%d\n",c);

}
else
c++;
}

}
给楼上的改了一下...


2007-02-09 22:40
delpiero
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-2-8
收藏
得分:0 
三楼有个小错误 应当是 else a=b-a; 吧

2007-02-10 07:52
delpiero
Rank: 1
等 级:新手上路
帖 子:61
专家分:0
注 册:2007-2-8
收藏
得分:0 
三楼的算法是纯数学的  数学学的不好不太明白原理  但你拿几个数试试就明白个大概了

2007-02-10 07:54
快速回复:[求助]习题的问题,大家看看
数据加载中...
 
   



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

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