Python-素数

学的是b站的课,非本人自创代码!

现在来写一篇博客来讲解求素数的方法,如果讲述不清可以私信问哈,如果讲的不好也可以说,毕竟自己还是入门水平.

目录

一.素数的定义

二.判断素数

1.底层逻辑

2.步骤

3.演示

三.求100以内所有素数

1.底层逻辑

2.步骤

3.演示

四.求自定范围内的所有素数

1.底层逻辑

2.步骤

3.演示

总结

一.素数的定义

素数是指一个大于 1 的自然数,除了 1 和它自身外,不能被其他自然数整除的数。例如,2、3、5、7、11 等都是素数,而 4、6、8、9、10 等都不是素数。

二.判断素数

1.底层逻辑

输入一个数,判断它除了1和自身外还有没有其他的因数.

2.步骤

1.请输入一个数.

ini 复制代码
# 判断素数
a = int(input("请输入一个数:"))

2.规定目前因数为0.

ini 复制代码
# 判断素数
a = int(input("输入一个数:"))
num = 0
  1. 规定除数为i.
ini 复制代码
# 判断素数
a = int(input("输入一个数:"))
num = 0
for i in range(2,a):

4.判断除后余数是否为0.

ini 复制代码
# 判断素数
a = int(input("输入一个数:"))
num = 0
for i in range(2,a):
    if a % i == 0:
  1. 如果是余数,则因数加1.
ini 复制代码
# 判断素数
a = int(input("输入一个数:"))
num = 0
for i in range(2,a):
    if a % i == 0:
        num = num +1

6.可以判断除该数不是素数,程序跳出循环.

ini 复制代码
# 判断素数
a = int(input("输入一个数:"))
num = 0
for i in range(2,a):
    if a % i == 0:
        num = num +1
        break
  1. 只有num=0时,n才是素数.
ini 复制代码
# 判断素数
a = int(input("输入一个数:"))
num = 0
for i in range(2,a):
    if a % i == 0:
        num = num + 1
        break
if num == 0:
    print("是素数")
else:
    print("是合数")

3.演示

三.求100以内所有素数

1.底层逻辑

因为求100以内,所以要对每个数都进行判断,将上文的输入换成遍历数字就行.

2.步骤

1.遍历2-100所有的数,我们用for...in循环语句.

python 复制代码
# 求100以内所有的素数
for n in range(2,100):
  1. 接着与上文相同.
ini 复制代码
# 求100以内所有的素数
for n in range(2,100):
    num = 0
    for i in range(2, n):
        if n % i == 0:
            num = num + 1
            break

3.因为只用输出素数,所以只用写 if语句.

ini 复制代码
# 求100以内所有的素数
for n in range(2,100):
    num = 0
    for i in range(2, n):
        if n % i == 0:
            num = num + 1
            break
    if num == 0:
        print(n,"是素数")

3.演示

四.求自定范围内的所有素数

1.底层逻辑

将上文的range换成input函数自己输入即可.

2.步骤

1.规定下限.

ini 复制代码
# 求自定范围内的所有素数
a = int(input("请输入下限:"))
  1. 规定下限.
ini 复制代码
# 求自定范围内的所有素数
a = int(input("请输入下限:"))
b = int(input("请输入上限:"))
for n in range(a,b):
    num = 0
    for i in range(2, n):
        if n % i == 0:
            num = num + 1
            break
    if num == 0 and n != 1:
        print(n,"是素数")

3.按照上文补齐语句.

ini 复制代码
# 求自定范围内的所有素数
a = int(input("请输入下限:"))
b = int(input("请输入上限:"))
for n in range(a,b):
    num = 0
    for i in range(2, n):
        if n % i == 0:
            num = num + 1
            break
    if num == 0 and n != 1:
        print(n,"是素数")

3.演示

总结

在 Python 中判断一个数是否为素数可以使用试除法或优化的试除法。在实际应用中,需要考虑多种情况,如负数、0、1、大数和特殊类型的数。根据不同的需求,可以选择不同的方法来判断素数。同时,素数在密码学、数学计算和数据筛选等领域都有广泛的应用。希望这篇博客对你理解和使用 Python 判断素数有所帮助。

个人认为这些程序的本质不变,举一反三。同志们多多调试,多改错,就会记住语法。有解释的不好的地方多多包涵,谢谢观看!

我也知道自己现在对Python 的理解可能还只是些皮毛,在学习的过程中,肯定有不少地方理解得还不够准确、不够深入。要是我在这儿讲的这些想法和理解,有啥不对的地方,还请同志们多多包涵呀。我这也是想把自己的学习心得和大家分享分享,说不定还能互相交流交流,让大家都能在学习 PPython 的路上走得更顺呢。

好啦,啰啰嗦嗦说了这么多,总之就是谢谢大伙能抽出时间来看我这些碎碎念啦,希望咱们都能在 Python 的学习中收获满满呀!再次谢谢观看!

相关推荐
小小张说故事2 小时前
Python 的 a[1:5:2] 到底切出了什么?拆开 slice 对象、__getitem__ 与负步长那次反向
python
wuyk5552 小时前
PyQt6-第15讲-数据可视化QChart
python·ui·信息可视化·pyqt
天天被压力2 小时前
【A股分钟级高频数据完全手册 #04】指数分钟级行情数据接口:沪深指数Pro版最新分时取数
java·人工智能·python
日日大王学编程3 小时前
2026主流AI Agent产品分类、核心差异与技术特性全解析
人工智能·后端·python
天天被压力3 小时前
【A股分钟级高频数据完全手册 #03】股票历史1分钟K线数据接口怎么用:Pro版批量拉取与本地缓存
java·人工智能·python
武天旭18 小时前
AI安全--AI大模型的毒性偏见与安全对齐实践
人工智能·python·深度学习
视觉小萌新19 小时前
AI Class 3 · Chapter 2-3:函数、异常、文件读写+JSON / JSONL 读写(小白版)
人工智能·python·json
小小张说故事20 小时前
Python 的 obj.x 到底按什么顺序找?拆开数据描述符、实例字典和 __getattr__ 那条优先级链
python
用户114818678948421 小时前
水印的实现方式逻辑
前端·python
贾公子21 小时前
从单条内容到账号维度——AIGC 风险评分的工程实现
后端·python