始一@ 发表于 2021-3-25 12:10:27

救救孩子,1到100之间的素数怎么算啊

for i in range (1,101):
        for n in range(2,i):
                ifi%n==0:
                        break
                else:
                        print(i)

这个对吗?

求问,怎么用while来做1到100的素数
求问,怎么用for和while连用来算1到100的素数{:9_228:}

qq1151985918 发表于 2021-3-25 12:23:07

for i in range(2,100):
    for j in range(2,i):
      if i % j == 0:
            break
    else:
      print(i,end=" ")

qq1151985918 发表于 2021-3-25 12:26:37

else的位置 ,此处 else 是与 for 循环组合的 else 而不该是 与 if
forelse 组合 表示当 for 循环能够循环全部并结束则会执行 else ,如果 for 中途 break 则不会执行 else

笨鸟学飞 发表于 2021-3-25 12:42:25

i = 2
while i < 100:
    n = 2
    while n < i:
      if not(i % n):
            break
      n += 1
    else:
      print(i,end=' ')
    i += 1

不喝酒怎么醉 发表于 2021-3-25 12:56:26

本帖最后由 不喝酒怎么醉 于 2021-3-25 13:02 编辑

素数除了1和本身不能被其他整除,所以

for i in range(2,10):               # 范围可以自定
    n = 2
    while n<i:                                 #n只要小于 i 就进入循环 让 i 对n取余 直到 i %(n-1)
      if i%n == 0:
            print(i,'=',n,'*',i//n)            #如果能被整除跳出循环
            break
      n += 1                                  #n 每次循环结束 递增 1
    else:
      print(i,'是一个素数。')             # 所有都不能整除打印 i 是素数
      

xjy=lwy 发表于 2021-3-25 13:26:31

x=1
x=100
while x!=x2:
    j=
    if j[-1]==x and j==1 and j[-1]!=1:
      print(x,',',end='')
    x+=1
页: [1]
查看完整版本: 救救孩子,1到100之间的素数怎么算啊