刚开始我写这个代码是想用一个简单的方法,但是能力有限,只能将这个比较普通的方法呈现出来了。
首先我们先编写一些前期准备的代码,如下:
我的目的是先创建两个集合,首先n集合先空着,将闭区间[x,y]的所有数都放到a集合里备用。
x,y=eval(input("请输入一个区间(闭区间)如:x,y "))
n=set()
a=set()
for i in range(x,y):
a.add(i)
接下来我们要编写的便是判断这个数是否为素数。
代码如下:
for i in range(x,y):
for m in range(2,i-1):
if i%m==0:
n.add(i)
break
质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。其中i%m==0来判断i除于m余数是否为零,为零则说明他有初1和其本身以外的因数,找到一个就可以结束这次循环了。
最后就是我们的输入程序了。
我们把不是质数的数放到了n集合里,这样我们就可以利用集合的查来得到质数了。但是我们要考虑到1和2这两个数字,所有为了方便起见,我就简单的写了一下这样的代码:
a=a-n-{1,2}
print(a)
最后输入的效果:
刚刚开始学python,有什么不足之处,感谢大神们的指正。
作者:Passerby9