📜  6.75 是有理数吗?(1)

📅  最后修改于: 2023-12-03 15:13:09.195000             🧑  作者: Mango

有理数判断程序

本程序旨在判断输入的数是否为有理数。

方法

判断一个数是否为有理数的方法是判断它能否表示为一个整数除以另一个不为0的整数的形式,即$$\frac{m}{n},\ \ (m,n\in \mathbb{Z},\ n\neq 0)$$ 如果能够表示为这种形式,则为有理数。否则就不是有理数。

代码实现
def is_rational(num):
    try:
        num = float(num)  # 将输入的字符串转换为浮点数
    except ValueError:
        return False  # 如果无法转换则不为有理数

    if num == int(num):  # 如果输入的数为整数,则为有理数
        return True

    # 尝试表示为一个整数除以另一个不为0的整数的形式
    for i in range(1, 1000):  # 枚举分母
        if int(num * i) == num * i:  # 如果分子为整数
            return True
    return False  # 如果无法表示为该形式,则不为有理数
使用示例

我们可以通过调用 is_rational 函数来判断一个数是否为有理数。例如:

print(is_rational(6.75))  # 输出 False

因为无法表示为一个整数除以另一个不为0的整数的形式,所以6.75不是有理数。