如何通过 Python 查看一个数字是不是质数?


本问题解决方案采用的原理是将给定数字除以从 3 到其平方根的所有数字,一个数字的平方根是其最大可能因子,超过这个因子就不必再检查是否被任何其他数字整除,即可确定它是一个质数。

对于所有可被 2 整除且小于 2 的数字,此函数返回 false。对于其他数字,如果被任意一个从 3 到其平方根的数字整除,此函数将返回 false;如果不被任何数字整除,则返回 true。

示例

def is_prime(a):
    if a < 2:
        return False
    elif a!=2 and a % 2 == 0:
        return False
    else:
        return all (a % i for i in range(3, int(a**0.5)+1) )
num=int(input('enter a number'))
if is_prime(num)==True:
    print ("{} is a prime number".format(num))
else:
    print ("{} is not a prime number".format(num))

输出

以上程序的示例运行−

enter a number24
24 is not a prime number
enter a number47
47 is a prime number

更新于: 2020-03-02

已查看 769 次

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.