使用列表实现筛选法求素数

实验目的

  • 了解素数的定义
  • 理解筛选法求解素数的原理
  • 理解切片操作
  • 熟练运行内置函数enumerate()
  • 熟练运用内置函数filter()
  • 理解序列解包的工作原理
  • 熟悉选择结构和循环结构

实验内容

  • 编写程序,输入一个大于2的自然数,然后输出小于该数字的所有素数组成列表。
import math
'''首先是进行素数判断,使用的筛选法构造函数isPrime'''
def isPrime(n):m = math.ceil(math.sqrt(n)+1)for i in range(2, m):if n%i == 0 and i<n:return Falsebreakelse:return Truen = input("请输入一个大于2的自然数:")
n = int(n)
'''由于0,1不是素数但能通过isPrime()函数测试
故而将范围设置为range(2,  n + 1 )以求实现[2, n]取值'''
list(filter(isPrime, [i for i in range(2, n+1)]))
请输入一个大于2的自然数:50
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]

python使用列表实现筛选法求素数相关推荐

  1. python使用集合实现筛选法求素数-python素数筛选法浅析

    原理: 素数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.在加密应用中起重要的位置,比如广为人知的RSA算法中,就是基于大整数的因式分解难题,寻找两个超大的素数然后相乘作 ...

  2. 经典算法——筛选法求素数(素数筛选)

    [数值问题]素数筛选 内存限制:128 MB时间限制:1.000 S 题目描述 输入一正整数n(2<=n<=5*10^6),按顺序输出2到n范围内的所有素数. 输入 输入共一行一个数,表示 ...

  3. 筛选法求素数一般方法求素数判断一个数是否是素数

                                      筛选法求素数&一般方法求素数&判断一个数是否是素数 1.判断一个数是否是素数 #include<stdio.h ...

  4. 问题 F: 筛选法求素数

    时间限制: 1 Sec  内存限制: 0 MB 题目描述 筛选法求素数是一种高效求素数的方法,其具体算法如下: 从2开始把连续的整数放入筛中,首先确定筛中第一个数2是素数.并从筛中晒去所有2的倍数(不 ...

  5. Eratosthenes集合筛选法求素数

    Eratosthenes集合筛选法求素数 算法思想 和数因子,和数因子是从素数中产生的,最小的素数为2,m作为合数因子,从2开始,配合k+=m,删除合数因子的倍数,当m不断扩大时,如当m为5的时候,上 ...

  6. python筛选法求素数讲解_埃氏筛选法求素数 Python

    代码如下 def _odd_iter(): # 构建奇数序列 从3开始 n = 1 while True: n = n + 2 yield n def _not_divisible(n): retur ...

  7. 素数筛(筛选法求素数)

    求素数 Problem Description 求小于n的所有素数的数量.(素数筛概念) Input 多组输入,输入整数n(n<1000000),以0结束. Output 输出n以内所有素数的个 ...

  8. 经典中的经典之——筛选法求素数(埃氏筛 | 线性筛)

    题目描述 统计小于非负整数n的质数数量 浑水摸鱼之蛮力验证法 直接上代码 bool is_zen(int x) {int i = 2;while (i * i <= x) {if (x % i ...

  9. ny520 最大素因子 筛选法求素数

    最大素因子 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 GreyAnts最近正在学习数论中的素数,但是现在他遇到了一个难题:给定一个整数n,要求我们求出n的最大素因子 ...

  10. Java筛选法求素数

    题目描述 给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果.输入值小于1000.如,输入为10, 程序应该输出结果为2.(共有两对质数的和为10,分别为(5,5),(3,7 ...

最新文章

  1. 2021-2027年中国一氧化氮行业市场研究及前瞻分析报告
  2. docker开源系统监控软件Nagios
  3. 数据库设计(概念、步骤)
  4. OpenGL创建hello Window窗口
  5. ES6-12 array/数值拓展、ArrayOf、ArrayFrom
  6. python做大数据的框架_Python+大数据计算平台,PyODPS架构手把手教你搭建
  7. Java集合List、Set、Map
  8. Metrics_collector还没有添加到共享预加载库(shared_preload_libraries)中
  9. gatsby_使用TinaCMS + Gatsby编辑Markdown的3种方法
  10. 计算机类学生综合素质论文,【计算机教学论文】计算机教学中培养学生综合素质的探讨(共2338字)...
  11. 撰写oracle-sql-hint的注意事项
  12. 【PL/SQL】处理数据
  13. Microsoft DirectX 8 开发人员常见问题
  14. 中医药天池大数据竞赛——中医文献问题生成挑战(二)
  15. 网页报表等无法打印提示网页上有错误的解决办法
  16. 基于R语言的关联规则分析项目
  17. KISSY基础篇乄KISSY之DOM(2)
  18. ccf-星际旅行(80分)
  19. 十个不错的 Linux 网络监视工具
  20. 人人都爱写总结,却少有人做计划

热门文章

  1. 计算机visio流程图,系统流程图和Visio
  2. springboot 调用萤石Saas平台
  3. AI语音合成软件免费的有哪些?常用的语音合成软件
  4. 爬取今日头条新闻,并导入execle中(主要用了selenium)
  5. boa服务器如何运行cgi,BOA服务器与CGI
  6. 【Python】视频转换成图片
  7. MPLAB PICKIT3、MPLAB SIM调试
  8. python 服务器后台运行
  9. SIM868中的GPRS调试失败的几个原因
  10. 查看linux内存和硬盘