burner
burner
采纳率77.8%
2020-05-21 14:08

Python, 请问得出素数2的逻辑是什么?

for n in range(2, 10):
for x in range(2, n):
if n % x ==0:
break
else:
print(n, '是素数。')

            答案是2,3,5,7。其他好理解,请问得出素数2的逻辑是什么?
            n为2时,for x in range(2,2)没道理啊。
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • caozhy 从今以后生命中的每一秒都属于我爱的人 1年前
    n=2
    for n in range(2, 10):
        for x in range(2, n):
            print(str(n) + " " + str(x))
            if n % x ==0:
                break
        else:
            print(n, '是素数。')
    

    (2, '\xe6\x98\xaf\xe7\xb4\xa0\xe6\x95\xb0\xe3\x80\x82')
    3 2
    (3, '\xe6\x98\xaf\xe7\xb4\xa0\xe6\x95\xb0\xe3\x80\x82')
    4 2
    5 2
    5 3
    5 4
    (5, '\xe6\x98\xaf\xe7\xb4\xa0\xe6\x95\xb0\xe3\x80\x82')
    6 2
    7 2
    7 3
    7 4
    7 5
    7 6
    (7, '\xe6\x98\xaf\xe7\xb4\xa0\xe6\x95\xb0\xe3\x80\x82')
    8 2
    9 2
    9 3

    2的时候,不会进入循环,所以走else

    点赞 1 评论 复制链接分享

相关推荐