开发者社区> 问答> 正文

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

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)没道理啊。

展开
收起
海边一只船 2020-05-27 10:12:30 525 0
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

    2020-05-27 13:40:35
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载