今天同学问了我一道python超级素数的题目,

很简单很常规,但是我做的并不好,我打算梳理一下,纠正一下编码习惯。

1.质数模板更改

以前用的是当初大一学VB时的求质数模板,自以为很牛逼,实际上早已落伍且漏洞百出。
以前是这样:

def prime(x):for i in range(2,x):if(x%i==0):breakreturn (i+1)==x

这种方法以循环变量的值来判断是否是质数,存在的问题是对于012这样的数要单独讨论,不然 i 这个变量不会被赋值,很麻烦,请忘却!
优化后是这样:

def prime(x):for i in range(2,x):if(x%i==0):return Falsereturn True

简单明了,没有用到循环变量,不会有相关的bug,是目前最简单最好理解最好记忆的模板。
倘若要稍微提升下性能,而且也不至于太难记忆,模板可以改成:

def prime(x):for i in range(2,int(x**0.5)+1):if(x%i==0):return Falsereturn True

只是改变了 i 的下限为 根号 x。

2.每n个换行输出

不要再自以为是地用 %n方法了,这样会出现的bug是第一轮换行输出会少一个。
优化为:
count从0开始,遍历到 n 则敲回车同时置count 为 0。

3.if语句的优化

不必要的情况下不要用嵌套!还是平行的好,直接编译为机器语言,速度还快。

def prime(x):for i in range(2,x):if x % i == 0:return Falsereturn True最后的代码如下
count=0
for i in range(2000,10000):if(prime(i) and prime(int(str(i)[:-1])) and prime(int(str(i)[:-2])) and prime(int(str(i)[:-3]))):print(i,end=" ")count+=1if(count==5):print()count=0
print()

Python超级素数相关推荐

  1. python求超级素数代码_C语言求超级素数

    展开全部 不考虑时间的需求,就用最简单的素数判断函数了#include #include #include bool isPrime(int n) { for(int i = 2; i <= s ...

  2. python输出超级素数_超级素数(sprime)

    超级素数(sprime) 题目描述 超级素数是指一个素数,每去掉后面一个数字,总能保证剩下的数为质数,例如: 373->37->3 这是一个长为3的超级素数. 输入 输入一个整数n (10 ...

  3. 如何判断一个数是否为超级素数

    超级素数是指一个素数去掉其中一位或多位后,仍然是素数的数字.判断一个数是否为超级素数的方法可以通过迭代地去掉一位或多位,然后判断剩下的数字是否为素数.这个过程可以用while循环和range函数来实现 ...

  4. python判断素数的函数_如何用python求素数

    如何用python求100以内的素数? 质数(primenumber)又称素数,有无限个.质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数,如:2.3.5.7.11.13.1 ...

  5. 熟悉scala命令,scala语言运行超级素数和猴子大王

    实验目的 在Linux操作系统中安装Scala 输入"scala"命令,熟悉地运行Scala解释器 scala语言运行超级素数和猴子大王 实验仪器 Virtualbox管理器 实验 ...

  6. python中编写函数素数_如何用Python编写素数程序?

    成为一个认证的专业素数是一个大于1的自然数,它没有除1以外的任何除数.你可以用Python编写一个代码来帮助你找到所有的素数.在本文中,我们将按照以下顺序在Python中编写一个素数程序:什么是素数? ...

  7. c语言十万以内超级素数,用C语言求素数的优化

    用C语言求素数的优化 这个程序运行了8个小时,求一亿以内的素数和超级素数. 大家帮忙看看,我求一亿以内的素数和超级素数.从下午5:30开始,一直到零晨0点30才结束.我的电脑配置也可以.INTER E ...

  8. python求素数算法_Python程序最多可计算n个质数(使用不同算法)

    python求素数算法 There are various methods through which we can calculate prime numbers upto n. 我们可以通过多种方 ...

  9. python判断素数程序_Python程序检查素数

    python判断素数程序 什么是质数? (What is a prime number?) A prime number is a natural number that is greater tha ...

最新文章

  1. JavaScript语言基础3
  2. Linux下命令行安装weblogic10.3.6
  3. Swift UIlabel 的高级用法,文本显示表情,图片
  4. ES5-6 作用域、作用域链、预编译、闭包基础
  5. React开发(231):常见手机号邮箱的正则
  6. mysqld_safemysqld区别
  7. 函数模板遇上函数重载
  8. 【Acm】算法之美—Fire Net
  9. 【Flex Viewer】源码介绍(2)Flex Viewer源码包结构
  10. Atitit.为什么小公司也要做高大上开源项目
  11. java 租房系统源码,JAVA房屋出租管理系统
  12. 如何批量将mp3压缩变小?
  13. 写DM9000网卡芯片驱动的预备知识
  14. 3 ROC曲线和PR曲线和AUG
  15. 移动医疗仍处于烧钱阶段,海量流量难变现
  16. 计算机开机跳过硬盘检查,怎么取消开机自动检测硬盘磁盘检查,开机老是修复分区怎么办及原因...
  17. 基于jsp+mysql+java+ssm高校学生成绩管理系统——计算机毕业设计
  18. 计算机工程怎么评,美国电气与计算机工程专业怎么样?评价如何
  19. Oracle建表——图书表
  20. level2买股技巧_同花顺Level-2教你看清个股真实交易数据

热门文章

  1. 如何把计算机上锁的d盘解锁,磁盘加锁记录没有了怎么解除加锁?
  2. Mini WinMount V0.2
  3. 机器学习中的隐变量/潜变量和隐藏空间/潜在空间
  4. 嘿嘿这个好玩---新型Android手机病毒现身 可对通话过程录音
  5. qq小程序图片和文字安全检测(文字和图片安全检测)
  6. 如何运用VRRP协议实现双主双备网络?
  7. Over 函数的使用
  8. 实验记录 | 6/3 修改somatic.pl中的文件路径
  9. webpack 打包html中css样式如果处理,webpack中单独打包css样式
  10. C#中 EXCEL的使用(转载资料)