今天查了很多关于判断质数的代码,自己也尝试写了一下。

质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。

所有我们能很容易的想到使用for循环来实现输入数m和[2,m-1)的相除。

代码实现:

m=eval(input("请输入一个整数:"))
for i in range(2,m-1):
    n=True
    if m%i==0:
        print("{}不是质数".format(m))
        n=False
        break

现在我们只有一个if,因为随机输入一个数它可能有很多因数,但我们只要判断出它存在一个除1和它本身的一个因数即可,所有我们在结尾使用的break,如果直接在for循环中加入else的话会输入很多信息,所有定义“n="False"做一个判断。

if n!=False:
    print("{}是质数".format(m))

这就实现了只输入一次结果,

完整代码:

m=eval(input("请输入一个整数:"))
for i in range(2,m-1):
    n=True
    if m%i==0:
        print("{}不是质数".format(m))
        n=False
        break
if n!=False:
    print("{}是质数".format(m))

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐