冬奥会不爱看 发表于 2022-3-7 12:44:44

怎样写一段计算n以内素数和的代码

num=int(input('n:'))
a=list(range(2,num))
for i in a:
      for k in range(1,i):
                if i%k==0:
                        a.remove(i)

sum(a)自己写的不知道出了什么问题

绿之叶 发表于 2022-3-7 12:45:08


改为:


num=int(input('n:'))
a=list(range(2,num+1))
b=list(a)

for i in a:
    for k in range(2,i):
      if i%k==0:
            b.remove(i)
            break

print(sum(b))

麻春宝 发表于 2022-3-7 12:45:34

def is_prime(x):
      for i in range(2,x):
                if x % i != 0:
                        pass
                else:
                        return False
      return True

def have_prime_list(x):
      list1 = []
      for i in range(2,x):
                if is_prime(i) == True:
                        list1.append(i)
      return sum(list1)

print(have_prime_list(20000))#----21171191
页: [1]
查看完整版本: 怎样写一段计算n以内素数和的代码