首页/文章/ 详情

算法 | 求最大公约数和最小公倍数

1月前浏览174

本文摘要(由AI生成):

本文介绍了如何使用古希腊数学家欧几里得提出的算法来计算两个整数的最大公约数(GCF)和最小公倍数(LCM)。欧几里得算法通过递归调用和取余运算来确定最大公约数。一旦获得最大公约数,可以通过简单的乘法运算来计算最小公倍数。文章还提到,欧几里得的《几何原本》作为西方文明史上的经典著作,对逻辑推理和证明题的起源产生了深远影响。最后,文章提到可以使用Fortran等编程语言来实现这些算法。

小学数学就学习了如何计算最大公约数(Greatest Common Factor,GCF)和最小公倍数(Lowest Common Multiple,LCM)。例如15和25的最大公约数是5,最小公倍数是75,数学老师会不厌其烦的用质数分解的方法讲解。那么,能不能用计算机来算?古希腊数学家欧几里得提出了最大公约数GCF的算法:

                    给出两个整数A和B

                    if B==0

                         则答案是A

                    else

                         答案是GCF(B,A%B)

这里%是取余运算,A%B的意思是A除以B,返回余数。例如5%2返回1,4%2返回0,即4能被2整除。

以上算法的大致思路是:如果B不等于0,则转为求B和A%B的最大公约数,并通过递归调用。来看一个例子

求35和25的最大公约数,过程如下表

有了求GCF的算法,求LCM就很简单了。求LCM关键是找到最大公约数GCF,算法如下

                    n=GCF(A,B)

                    LCM(A,B)=n*(A/n)*(B/n)

              或者LCM(A,B)=A / n * B

用Fortran来实现

欧几里得的《几何原本》(Elements)是西方文明史上最有名气的著作之一,古往今来都作为标准教科书使用,书中展现了他大师级的逻辑推理。事实上,“证明题”就源自他的《几何原本》。该著作对后世的数学家和哲学家产生了深远影响。

来源:数值分析与有限元编程
ACT
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-04-02
最近编辑:1月前
太白金星
本科 慢慢来
获赞 2粉丝 4文章 290课程 0
点赞
收藏

作者推荐

未登录
还没有评论

课程
培训
服务
行家

VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈