标题:关于最大公约数和最小公倍数的算法
只看楼主
wuyuqingzhu
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-5-24
 问题点数:0 回复次数:5 
关于最大公约数和最小公倍数的算法

各位大哥.请问最大公约数与最小公倍数的算法有多少种?
我看见着篇代码,但是看不懂while这个循环,能否提点一下?

代码如下:
#include "stdio.h"

main()
{
int a,b,t,p,r;
scanf("%d,%d",&a,&b);
if (a<b)
{t=a;
a=b;b=t;
}
p=a*b;
while(b!=0)
{ r=a%b;
a=b;
b=r;
}
printf("bog%d\n",a);
printf("%d\n",p/a);

getch();
}

谢谢!

搜索更多相关主题的帖子: 算法 最大公约数 最小公倍数 printf bog 
2006-09-21 15:52
chenjin145
Rank: 1
等 级:禁止访问
帖 子:3922
专家分:0
注 册:2006-7-12
得分:0 
一直得到兩數的餘
除數一直除餘一直到餘為0
除數就是最大公約數

原數的積除以最大公約數就是最大公倍數

[url=javascript:alert(1);] [div]fdgfdgfdg\" on\"[/div] [/url]
2006-09-21 15:57
wuyuqingzhu
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2006-5-24
得分:0 

我懂得了,是循环搞的鬼!谢谢这位老人!呵呵! 真的非常感谢,

2006-09-21 16:12
sunyuantz
Rank: 1
等 级:新手上路
威 望:1
帖 子:407
专家分:0
注 册:2006-3-20
得分:0 
没想过有多少种求最大数的方法,让我找一找!

我不是名人,所以不要签名。等哪天我成名人了......你都认识我了还要签名干嘛!
2006-09-21 19:40
ecbtnrt
Rank: 1
等 级:新手上路
威 望:1
帖 子:189
专家分:0
注 册:2006-4-16
得分:0 

辗转相除法是欧几里德发现的,他提出了一定理a= bq+c;
即(a,b)=(b,c)
应该是很经典的了,当然这是一般学语言接触到的第一个算法了,
因为它是一个定理,有一定的不好理解的地方,你能写出这个程序的
代码,即使是闭着眼也能写出,也可能不理解是为什么。


我为你痴,为你狂!
2006-09-21 21:09
tang123
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2006-9-22
得分:0 

呵呵.应该还有一种方法的啊

2006-09-22 09:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-91900-1-1.html




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

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