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 的学习中收获满满呀!再次谢谢观看!

相关推荐
ValhallaCoder2 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
猫头虎3 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
八零后琐话3 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
青春不朽5125 小时前
Scrapy框架入门指南
python·scrapy
MZ_ZXD0015 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
全栈老石6 小时前
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
后端·python
梨落秋霜6 小时前
Python入门篇【模块/包】
python
阔皮大师7 小时前
INote轻量文本编辑器
java·javascript·python·c#
小法师爱分享7 小时前
StickyNotes,简单便签超实用
java·python