如何写编程100到1000范围内所有的素数的和
素数怎么表示
怎么求和
START, END = 100, 1000
data = [1] * END
data[:2] = [0, 0]
result = []
for idx in range(int(END ** 0.5) + 1):
if idx > 1:
if data[idx] == 1:
for idy, _ in enumerate(data):
if idy > idx and idy % idx == 0:
data[idy] = 0
resu = [idx for idx, v in enumerate(data) if END + 1 > idx > START - 1 and v == 1]
print(sum(resu))
'''--result
75067
'''
参考这里代码:
https://blog.csdn.net/qq_45767254/article/details/107421665
求和直接用sum(list1)即可。
num = 2
count = 0
a = []
while num <= 100 :
if num == 2 or num ==3 or num ==5 or num == 7 :
a.append(num)
count += 1
elif num % 2 != 0 and num % 3 != 0 and num % 5 != 0 and num % 7 != 0 :
a.append(num)
count += 1
num += 1
print('100以内的质数有%s个,分别是:%s'%(count,a))