今天就跟大家聊聊有关Python中怎么求最大公约数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
代码实现
# 定义一个函数def hcf(x, y): """该函数返回两个数的最大公约数""" # 获取最小值 if x > y: smaller = y else: smaller = x for i in range(1, smaller + 1): if ((x % i == 0) and (y % i == 0)): hcf = i return hcf# 用户输入两个数字num1 = int(input("输入第一个数字: "))num2 = int(input("输入第二个数字: "))print(num1, "和", num2, "的最大公约数为", hcf(num1, num2))
程序运行结果:
输入第一个数字: 85
输入第二个数字: 15
85 和 15 的最大公约数为 5
程序分析
提示:如果数a能被数b整除,a就叫做b的倍数,b就叫做a的约数。几个整数中公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。
程序第一至12行,为程序算法实现,将算法封装成了一个函数,第14、15行提示用户输入任意的两个数,最后第16行输出运算结果,输出时,将用户输入的num1和num2做为参数,传给函数hcf,hcf将运算结果返回print,结果输出。
这里主要分析一下核心程序hcf函数:第二行def hcf(x, y):,为函数定义的固定部分,参数为x,y。
第5至8行,将x与y中最小的数找出来,并将值赋给变量smaller;
第9至11行,通过循环的方法,从小到大找出1到smaller,能同时整除x和y的数,并将最大的数赋值给hcf。
第12行,将hcf值,即最大公约数返回给调用此函数的程序段,此处为返回第16行,最后程序结束。
看完上述内容,你们对Python中怎么求最大公约数有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。