Python作业题——“素数问题”

这篇具有很好参考价值的文章主要介绍了Python作业题——“素数问题”。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、题目描述

1、输入格式

2、输出格式

二、代码解析

1、全部代码

2、代码详解

三、源代码奉上


一、题目描述

编写一个能进行素数判定的小程序。

判定用户输入的一个正整数 n 是否为素数。

将素数的判定代码定义为一个函数,接受用户输入的正整数 n,返回 n 是否是素数,n 为素数时返回 True,不是素数时返回 False。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

并调用该函数判定用户输入的一个正整数 n 是否为素数。

1、输入格式

输入一个正整数

2、输出格式

若该数为素数,输出“X是素数”‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪

若该数为非素数,输出“X不是素数”‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

其中X为输入的整数

二、代码解析

1、全部代码

编程实现判定用户输入的一个正整数 n 是否为素数。 将素数的判定代码定义为一个函,算法,python

2、代码详解

当n小于2时不是素数,返回false

if n < 2:

        return False

然后运用循环,把n除以2~n^0.5+1内的数,如果存在相除等于0,则说明该数有因子,不是素数,循环结束没有返回,则说明没有因子,是素数,返回true 

if n < 2:

        return False

    for i in range(2,int(n**0.5)+1):

        if n % i == 0:

            return False

    return True

说明:为什么循环到int(n**0.5)+1

假设a = n^0.5
b < a
c = n / b > n / a
a = n / a
所以两边必然有相等个因子


所以我们只要遍历前半部分即可判断是否具有因子,而n^0.5可能为小数,所以我们应该取整,用int取整可能会小于中间值,所以需要加一,当然不加以的话可以使用math.ceil取整,这里就不过多展开啦~

三、源代码奉上

def is_prime(n): 
    """判断素数的函数,接收一个正整数为参数,返回值是布尔类型。
    参数是素数时返回True,否则返回False"""
    #==================Begin=================================
    if n < 2:
        return False
    for i in range(2,int(n**0.5)+1):
        if n % i == 0:
            return False
    return True
    
    #===================End================================


positive_int = int(input())      # 输入一个正整数
if is_prime(positive_int):
    print(f'{positive_int}是素数') 
else:
    print(f'{positive_int}不是素数')

还有什么不懂的可以来找博主哦~~

 喜欢的话记得三连哦~~~

感谢支持!!!文章来源地址https://www.toymoban.com/news/detail-771230.html

到了这里,关于Python作业题——“素数问题”的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 无线传感器网络作业题

    超星无线传感器网络作业题 选择题 1【多选题】无线传感器网络的主要特点包括( BCD )。 A、节点位置固定 B、无中心 C、自组织 D、多跳路由 2【多选题】无线传感器网络节点包括( AB )。 A、传感器节点 B、汇聚节点 C、管理节点 3【多选题】无线传感器网络中的传感器节点具

    2024年02月11日
    浏览(47)
  • 利用顺序栈完成的作业题(C语言)

    /** * @file name: * @brief * @author ni456xinmie@163.com * @date 2024/04/25 * @version 1.0 : * @property : * @note * CopyRight (c) 2023-2024 ni456xinmie@163.com All Right Reseverd */ ​ 设计一个进制转换程序,使用顺序栈设计一个把十进制数转换为十六进制数的接口,实现当通过键盘输入一个非负的十进制数,可

    2024年04月25日
    浏览(36)
  • 凃国防老师《高级通信原理》第八章作业题复习

    第八章主要是讲两类信道编码方式,线性分组码以及卷积码。 线性分组码:(循环码也是线性分组码的一种),核心是生成矩阵和校验矩阵 卷积码:核心是编码器、状态转移图、网格图、转移函数、自由距离、好码恶码判断。卷积码采用维比特译码方案,不过必做部分作业

    2024年02月11日
    浏览(41)
  • 第六章 敏捷开发与配置管理-作业题-关于Git的题目

    小图所在的某校信息学院有一位程老师,他对生命游戏特别感兴趣,正巧他看到小图最近在研究生命游戏。程老师想了一些生命游戏的新规则,他想检验一下那些规则是否有效,于是拍了拍小图的肩膀,语重心长地说:“生命游戏能不能成为游戏界的主流,能不能在游戏史上

    2024年02月10日
    浏览(42)
  • [保研/考研机试] KY163 素数判定 哈尔滨工业大学复试上机题 C++实现

    素数判定 https://www.nowcoder.com/share/jump/437195121691718831561 给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。 测试数据有多组,每组输入一个数n。 对于每组输入,若是素数则输出yes,否则输入no。

    2024年02月13日
    浏览(55)
  • 【LeetCode题目详解】1281题 整数的各位积和之差 面试题 01.01. 判定字符是否唯一 python题解(作业一二)

    问题描述: 1281. 整数的各位积和之差 给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。 示例 1: 输入:n = 234 输出:15 解释: 各位数之积 = 2 * 3 * 4 = 24 各位数之和 = 2 + 3 + 4 = 9 结果 = 24 - 9 = 15 示例 2: 输入:n = 4421 输出:21 解释:

    2024年02月10日
    浏览(50)
  • POJ 2429 Miller-rabin素数判定 + pollard-rho质因子分解 + 埃氏筛法

    题目不能说是很难,只是用到了许多数学上的知识(费马小定理,miller-radin,pollard-rho),还有一些算法上的知识DFS,辗转相除。 我也很菜,一个周末的时间都用在这个题目上了,但写了很多很多的注释,花费了大量的篇幅,浅谈了我对这些算法的拙见,希望能够帮助大家!

    2024年02月13日
    浏览(39)
  • Python学习37:素数问题(python123)

    描述 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬ 素数或称质数

    2024年02月05日
    浏览(46)
  • Python-两种方法实现输出素数(质数)

    方案一: 程序的设计为: 1、设为被除数,取值范围可以自行设定,本例设为3-100;(1、2均不是素数) 2、设计为除数,除数的取值范围为除掉1和自身以及比自身大的数字(当被除数本身不为0时,除以比自身大的数余数一定不为零。) 3、在这两个前提下,先让固定,遍历范

    2024年02月11日
    浏览(35)
  • PTA Python作业1熟悉python编程环境

    目录 判断题 单选题 编程题 7-1 简单输出 7-2 输入并输出一个字符串 7-3 考试通过 7-4 姓名年龄与体重 7-5 计算圆的周长和面积 1-1Python是开源的,他可以被移植到许多平台上。(T) 1-2print ()不可以用于同时输出多个变量值。(F) 1-3Python中的注释是可以#开头。(T) 1-4Python代码的注

    2024年02月07日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包