> 文档中心 > Python数学计算工具2、判断质数、遍历质数

Python数学计算工具2、判断质数、遍历质数

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。


质数在很多的运算中都能给我们很大的帮助,是我们工作后期很好的一个数学帮手,那么我们需要对质数加深了解,那么这个小工具就能帮助我们来处理这些事情:

源码:

这里我进行了异常处理,处理的方式是无论输入什么错误的内容都会继续重新输入,所以不用怕异常,但是查询质数范围别写亿为单位就行,几百上千万还是能遍历出来的。每行我显示了5个值。

# 计算质数import osos.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 Falsedef 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:\save\Exe\studys\Python\exe\Lib -i D:\save\myclass\Python\core\pythonProject\python.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对。