TB椰程 TypeBuddy 打字搭子

练5.6 筛选法找质数

Python学考一本通 · 代码 · python · 难度 3/5 · 共 340 字

用筛法求n以内全部质数

  • Python学考
  • 练习

正文

# 原题:https://oj.yecheng.tv/p/P1077
# 题意:用筛法求出n以内的全部质数
# 思路:用列表标记每个数是否为质数,从2开始
#       把每个质数的倍数都划掉,最后扫一遍,质数当场输出
n = int(input())
p = [1] * (n + 1)
p[0] = 0
p[1] = 0
for i in range(2, n + 1):
    if p[i] == 1:
        for j in range(i + i, n + 1, i):
            p[j] = 0
for i in range(2, n + 1):
    if p[i] == 1:
        print(i, end=" ")

Python学考一本通的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK