求最大公约数

1.什么是欧几里得算法

辗转相除法,又被称为欧几里德(Euclidean)算法, 是求最大公约数的算法。辗转相除法首次出现于欧几里得的《几何原本》(第VII卷,命题i和ii)中,而在中国则可以追溯至东汉出现的《九章算术》。
两个数的最大公约数是指能同时整除它们的最大正整数。辗转相除法的基本原理是:两个数的最大公约数等于它们中较小的数和两数之差的最大公约数。

https://www.cnblogs.com/inghzhang/p/3884700.html

2.算法说明:

用较大数m减较小数n,再用差m-n和n比较,用较大数减较小数……以此类推,直到差等于0为止。
此时这两个相等的数即为最大公约数。

3.伪代码

read a

read b

while(a<b)

set temp to a

set a to b

b=temp

if b=0

    write a

else

     set  c to a % b

while(c!=0)

set a to b

set b to c

if c=0

write b

4检测

 

posted on 2021-11-01 22:06  20211426赵炫宇  阅读(16)  评论(0编辑  收藏  举报

导航