python使用列表实现筛选法求素数
使用列表实现筛选法求素数
实验目的
- 了解素数的定义
- 理解筛选法求解素数的原理
- 理解切片操作
- 熟练运行内置函数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使用列表实现筛选法求素数相关推荐
- python使用集合实现筛选法求素数-python素数筛选法浅析
原理: 素数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.在加密应用中起重要的位置,比如广为人知的RSA算法中,就是基于大整数的因式分解难题,寻找两个超大的素数然后相乘作 ...
- 经典算法——筛选法求素数(素数筛选)
[数值问题]素数筛选 内存限制:128 MB时间限制:1.000 S 题目描述 输入一正整数n(2<=n<=5*10^6),按顺序输出2到n范围内的所有素数. 输入 输入共一行一个数,表示 ...
- 筛选法求素数一般方法求素数判断一个数是否是素数
筛选法求素数&一般方法求素数&判断一个数是否是素数 1.判断一个数是否是素数 #include<stdio.h ...
- 问题 F: 筛选法求素数
时间限制: 1 Sec 内存限制: 0 MB 题目描述 筛选法求素数是一种高效求素数的方法,其具体算法如下: 从2开始把连续的整数放入筛中,首先确定筛中第一个数2是素数.并从筛中晒去所有2的倍数(不 ...
- Eratosthenes集合筛选法求素数
Eratosthenes集合筛选法求素数 算法思想 和数因子,和数因子是从素数中产生的,最小的素数为2,m作为合数因子,从2开始,配合k+=m,删除合数因子的倍数,当m不断扩大时,如当m为5的时候,上 ...
- python筛选法求素数讲解_埃氏筛选法求素数 Python
代码如下 def _odd_iter(): # 构建奇数序列 从3开始 n = 1 while True: n = n + 2 yield n def _not_divisible(n): retur ...
- 素数筛(筛选法求素数)
求素数 Problem Description 求小于n的所有素数的数量.(素数筛概念) Input 多组输入,输入整数n(n<1000000),以0结束. Output 输出n以内所有素数的个 ...
- 经典中的经典之——筛选法求素数(埃氏筛 | 线性筛)
题目描述 统计小于非负整数n的质数数量 浑水摸鱼之蛮力验证法 直接上代码 bool is_zen(int x) {int i = 2;while (i * i <= x) {if (x % i ...
- ny520 最大素因子 筛选法求素数
最大素因子 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 GreyAnts最近正在学习数论中的素数,但是现在他遇到了一个难题:给定一个整数n,要求我们求出n的最大素因子 ...
- Java筛选法求素数
题目描述 给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果.输入值小于1000.如,输入为10, 程序应该输出结果为2.(共有两对质数的和为10,分别为(5,5),(3,7 ...
最新文章
- 2021-2027年中国一氧化氮行业市场研究及前瞻分析报告
- docker开源系统监控软件Nagios
- 数据库设计(概念、步骤)
- OpenGL创建hello Window窗口
- ES6-12 array/数值拓展、ArrayOf、ArrayFrom
- python做大数据的框架_Python+大数据计算平台,PyODPS架构手把手教你搭建
- Java集合List、Set、Map
- Metrics_collector还没有添加到共享预加载库(shared_preload_libraries)中
- gatsby_使用TinaCMS + Gatsby编辑Markdown的3种方法
- 计算机类学生综合素质论文,【计算机教学论文】计算机教学中培养学生综合素质的探讨(共2338字)...
- 撰写oracle-sql-hint的注意事项
- 【PL/SQL】处理数据
- Microsoft DirectX 8 开发人员常见问题
- 中医药天池大数据竞赛——中医文献问题生成挑战(二)
- 网页报表等无法打印提示网页上有错误的解决办法
- 基于R语言的关联规则分析项目
- KISSY基础篇乄KISSY之DOM(2)
- ccf-星际旅行(80分)
- 十个不错的 Linux 网络监视工具
- 人人都爱写总结,却少有人做计划