python如何判断两数互质

python如何判断两数互质

作者:Elara发布时间:2026-01-07阅读时长:0 分钟阅读次数:41

用户关注问题

Q
如何在Python中判断两个数的最大公约数?

我想知道如何用Python代码计算两个数的最大公约数,这样才方便判断它们是否互质。

A

使用math模块的gcd函数计算最大公约数

Python内置的math模块提供了gcd函数,可以用来计算两个数的最大公约数。代码示例如下:

import math

a, b = 12, 25
result = math.gcd(a, b)
print(result) # 输出1表示互质

Q
判断两个数是否互质的Python代码怎么写?

我需要一个简洁的方法来判断两个整数是否互质,能够直接返回True或False。

A

判断互质的Python代码示例

判断两个数是否互质,可以通过检查它们的最大公约数是否为1来实现。如果最大公约数为1,则两个数互质。示例代码:

import math

def are_coprime(x, y):
return math.gcd(x, y) == 1

print(are_coprime(12, 25)) # 输出True

Q
有没有不借助内置函数判断两数互质的方法?

想知道如何用Python手动实现判断两个数是否互质,而不使用math模块的gcd函数。

A

使用辗转相除法实现最大公约数从而判断互质

可以通过手写辗转相除法(欧几里得算法)计算最大公约数,然后判断是否为1。示例代码如下:

def gcd(x, y):
while y:
x, y = y, x % y
return x

def are_coprime(x, y):
return gcd(x, y) == 1

print(are_coprime(14, 15)) # 输出True