质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。
质数在很多的运算中都能给我们很大的帮助,是我们工作后期很好的一个数学帮手,那么我们需要对质数加深了解,那么这个小工具就能帮助我们来处理这些事情:
源码:
这里我进行了异常处理,处理的方式是无论输入什么错误的内容都会继续重新输入,所以不用怕异常,但是查询质数范围别写亿为单位就行,几百上千万还是能遍历出来的。每行我显示了5个值。
代码语言:javascript复制# 计算质数
import os
os.system("title 质数查询与判断:")
def isZhi(num):
# 质数大于 1
if num > 1:
# 查看因子
for i in range(2, num):
if (num % i) == 0:
return False
break
else:
return True
# 如果输入的数字小于或等于 1,不是质数
else:
return False
def baiZhi(size):
count = 0
for i in range(2, size):
if isZhi(i):
print(i, end="t")
count = 1
if count % 5 == 0:
print()
while True:
try:
choose = input("输入功能选择: 1、判断质数t2、查询范围内所有质数")
if choose == "1":
num = int(input("请输入一个数字: "))
if isZhi(num):
print("是质数")
else:
print("不是质数")
elif choose == "2":
num = int(input("请输入查询范围(例如:1000): "))
baiZhi(num)
print()
except:
print("请正确输入!")
示例包下载地址:
https://download.csdn.net/download/feng8403000/86933994
下面是打包过程:
使用打包工具:【pip install pyinstaller】
安装完成后注意使用语法:
pyinstaller -F -p D:saveExestudysPythonexeLib -i D:savemyclassPythoncorepythonProjectpython.ico demo5.py -n " 质数判断与质数范围查询工具"
可以看到我使用了2个绝对路径,绝对路径1是Python环境的包所在的位置,如果包不全的话需要自己通过pip进行下载,建议修改完镜像位置再下载。不会也别着急,每篇违章后面都会有打包教程。操作次数多了也就会了。
执行完成我们看到【successfully】代表成功了。
效果如下:
这里备了点孪生数的信息,可以看看了解一下:
以下15个区间内质数和孪生质数的统计数。
S1区间1——72,有素数18个,孪生素数7对。(2和3不计算在内,最后的数是孪中的也算在前面区间。) S2区间73——216,有素数27个,孪生素数7对。 S3区间217——432,有素数36个,孪生素数8对。 S4区间433——720,有素数45个,孪生素数7对。 S5区间721——1080,有素数52个,孪生素数8对。 S6区间1081——1512,素数60个,孪生素数9对。 S7区间1513——2016,素数65个,孪生素数11对。 S8区间2017——2592,素数72个,孪生素数12对。 S9区间2593——3240,素数80个,孪生素数10对。 S10区间3241——3960,素数91个,孪生素数19对。 S11区间3961——4752素数92个,孪生素数17对。 S12区间4752——5616素数98个,孪生素数13对。 S13区间5617——6552素数108个,孪生素数14对。 S14区间6553——7560素数113个,孪生素数19对。 S15区间7561——8640素数116个,孪生素数14对。