用 Python 编写程序来计算两个数的公约数
pythonserver side programmingprogramming更新于 2025/12/28 2:52:17
假设我们有两个数 a 和 b。我们必须找出有多少个正整数,它们都是 a 和 b 的公约数。
因此,如果输入为 a = 288 b = 240,则输出将为 10,因为公约数为 [1,2,3,4,6,8,12,16,24,48]。
为了解决这个问题,我们将遵循以下步骤 −
- res := 0
- 对于范围为 1 到 gcd(a, b) + 1 的 i,执行
- 如果 (a mod i) 为 0 且 (b mod i) 为 0,则
- res := res + 1
- 如果 (a mod i) 为 0 且 (b mod i) 为 0,则
- 返回 res
示例
让我们看看下面的实现以便更好地理解 −
from math import gcd def solve(a, b): res = 0 for i in range(1, gcd(a,b)+1): if (a % i) == 0 and (b % i) == 0: res += 1 return res a, b = 288, 240 print(solve(a, b))
输入
288, 240
输出
10
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

