当前位置:   article > 正文

python练习:可逆素数_python 可逆质数

python 可逆质数
题目:可逆素数
问题描述:

编写程序找出1 ~ 900之间的所有可逆素数(可逆素数是指一个素数的各位数值顺序颠倒后得到的数仍为素数,如113、311)。

解题思路

1、找到1-900之间所有素数并储存到一个表里面
2、迭代所有的数,是素数的话将素数转化成字符串,通过逆转操作,得到反序数
3、判断反序数是否是素数,如果是则打印出两个数

#通过筛法求素数
在这里插入图片描述
从2开始依次往后面数,如果当前数字一个素数,那么就将所有其倍数的数从表中删除或者标记,然后最终得到所有的素数。

筛法求素数有一个速度性能上的优化 1、先标记2,那么2的倍数都不是素数,依次 ,2,4,6,8,10,12都会被标记
2、标记3,应该是从9开始,而不是6,并且以3的倍数为间隔,来进行标记,这样减少大量运算时间
3、除了2以外,所有素数都是奇数。奇数的平方还是奇数,如果再加上奇数就变成了偶数一定不会是素数,所以加偶数(2倍素数)。
预先处理了所有偶数。

#筛法得到一个标记为素数的表
n=
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/512340
推荐阅读
相关标签
  

闽ICP备14008679号