python3判断输入的数是否为素数

首先,须要明确什么是素数?spa

  素数:又称质数,指在大于1的天然数中,除了1和该数自己外,没法被其余天然数整除的数(也可定义为只有1与该数自己两个因数的数)。code

  举个例子:5---除了能被1或5整除外,再也找不到第三个能够整除它的天然数了。那么5就是素数。blog

那么,若是用程序如何来判断它是否是素数?input

实现思路:it

1 须要先输入一个被判断的数字并赋值给 Number 2 判断这个数符不符合“Number > 1”的规则,若是不符合就结束循环,若是符合就去检验是否是素数 3 若是能被1到Number之间的任意一个正整数整除就能够判断为不是素数,便可结束循环 4 若是1至Number之间全部的正整数都不能整除,那么就是素数,便可结束循环

有了思路,我们来看具体要怎么实现:class

Number = int(input("请输入一个数字:"))          # 输入一个正整数,并赋值给Number
if Number > 1:                                 # 判断输入的正整数是否大于1
    for i in range(2,Number):                  # 循环取出2至Number-1的正整数 i
        if Number % i == 0:                    # 将Number与i取余,若是余数为0 ,则就能够被整除
            print ("数字%s不是素数" % Number) break                              # 不是素数,结束循环
    else: print("数字%s是素数" % Number)           # 不然就是素数,打印结果
else: print("输入的数字小于1,不合法")

对于这段代码,有个地方要注意:循环

  else没有和if是一对,而是和for并排的,else与for搞到了一块儿,凑成了一对,咱们常见的是if…else…或者if…elif…else诸如此类,但其实for也能够和else搭配出现,在这段代码里,当某一次遍历结果余数为0后,break生效,那循环就结束了。就这样完了,就是上边思路中的第三点。遍历

最后来看看不一样状况的结果:程序

请输入一个数字:17 数字17是素数 请输入一个数字:-10 输入的数字小于1,不合法 请输入一个数字:9 数字9不是素数
相关文章
相关标签/搜索