美文网首页从零开始学Python
Python习题册031:计算两个数的最大公约数

Python习题册031:计算两个数的最大公约数

作者: iLester | 来源:发表于2019-01-24 17:18 被阅读0次

    任务031描述

    用Python编写一个程序,用于计算两个整数的最大公约数。

    分析及示例

    计算最大公约数有很多算法,例如“辗转相除法”,在这里用最简单的方式。首先将两个数相除,如果可以整除,那么被除数就是最大公约数。否则就从被除数的一半依次减1去整除,直至同时被两个数整除为止。

    示例算法:

    def gcd(x, y):
       gcd = 1
    
       if x % y == 0:
           return y
    
       for k in range(int(y/2), 0 , -1):
           if x % k ==0 and y % k == 0:
               gcd = k
               break
       return gcd
    
    print(gcd(12,17))
    print(gcd(81,27))
    

    输出结果:

    1
    27
    

    相关文章

      网友评论

        本文标题:Python习题册031:计算两个数的最大公约数

        本文链接:https://www.haomeiwen.com/subject/dntzdqtx.html