川英 发表于 2022-3-10 07:26:22

小白求助

找素数 这个代码为啥不行啊
for x in range(2,100):
    for factor in range(2,x):
      sum=0
      if x%factor!=0:
            sum+=1
    if sum==(x-2):
      print(x)

放或追逐够 发表于 2022-3-10 07:26:46

判断求余数等于0的跳出就可以了。
for x in range(2,100):
    for factor in range(2,x):
        if x % factor ==0:
            break
    else:
        print(x)

皮蛋咸鱼粥up 发表于 2022-3-10 07:27:20

按照你的思路应该改成下面这样
for x in range(2,100):
    sum=0
    for factor in range(2,x):
      if x%factor!=0:
            sum+=1
    if sum==(x-2):
      print(x)

彪投股份董事长 发表于 2022-3-10 07:27:39

for x in range(2,100):
    for factor in range(2,x):
      if x % factor ==0:
            break
    else:
       #说明: 如果没用break跳出循环,则会执行一次else语句。
      print(x)
页: [1]
查看完整版本: 小白求助