Python求区间正整数内所有素数之和的方法实例


Posted in Python onOctober 13, 2020

前言

Python的学习记录与分享——PTA程序设计类教学平台。如果你也正在学习关于此类的题目可以仔细阅读这篇文章,了解一下循环结构、素数的基本语法知识。

题目:

7-5就区间正整数内所有素数之和 (20分)

【描述】求m-n以内所有素数之和并输出。‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬素数指从大于1,且仅能被1和自己整除的整数。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬提示:可以逐一判断区间[m,n]之间以内每个数是否为素数,然后求和。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬‬若m?n之间无素数,则输出“not have prime!”:

输入格式:

在一行输入2个正整数m,n。m可以大于n。例如计算1?100之间(包括100),可以输入100 1

输出格式:

若有素数,输出素数之和的一个整数,若该区间没有素数则输出not have prime!。

输入样例:

1 100

输出样例:

1060

答案

m, n = map(int, input().split())
sum = 0
if m > n:
  m, n = n, m
for i in range(m, n+1):
  if i != 1:
    for j in range(2, i):
      if i % j == 0:
        break
      else:
        pass
    else:
      sum += i
if sum == 0:
  print('not have prime!')
else:
  print(sum)

详细解析:

首先了解什么是素数

质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数)。

举个例子:7这个数,从2开始一直到6,都不能被它整除,只有1和它本身(7)才能被整除,所以7就是一个质数。

编写代码

1. 根据题目要求:在一行输入2个正整数m,n。

m, n = map(int, input().split())

  map()会根据提供的函数对指定序列做映射。它的返回结果是一个列表在

     ----这里的作用就是将多个输入值批量转换成in----

  split()方法指定分隔符对字符串进行切片,如果参数num 有指定值则仅分隔 num 个子字符串

    ----这里的作用就是将输入的一条字符串以空格为分隔符切割----

2. 首先学会判断一个数是不是素数的代码

i=7    "用7举例"
for j in range(2, i):  "for循环让7除以2-7之间的数"
  if i % j == 0:
 break   "如果是i除j等于0说明不是素数直接(break)结束循环"
 else:
 print("是素数")

         range(start,end,step=)-----range(开始值,结束值,步长)没写默认为1

3. 判断多个数是不是素数

定义一个i,用for循环让i在里面m-n之间取值

for i in range(m, n+1):
  if i != 1:   “开始的条件必须是i不能等于1”
    for j in range(2, i):
      if i % j == 0:
        break
      else:
        pass
    else:
      sum += i  “如果是就在sum里面加上这个(i)素数”

4. m、n从小到大排序

 上面的素数判断都会了后会发现一个问题就是,如果用户输入100 1时运行会发生错误那么我们则需要在判断素数前保证m是小的值,n是大的值。

if m > n:
  m, n = n, m

5. 输出答案

if sum == 0:   “如果sum在前面的整个for循环里都没有素数加入”
  print('not have prime!')  “那么输出'not have prime!'”
else:    “否则”
  print(sum)    “输出答案”
// An highlighted block
var foo = 'bar';

结束

到此这篇关于Python求区间正整数内所有素数之和的文章就介绍到这了,更多相关Python区间正整数内所有素数之和内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python入门篇之字符串
Oct 17 Python
Python接收Gmail新邮件并发送到gtalk的方法
Mar 10 Python
Python判断文件和文件夹是否存在的方法
May 21 Python
利用Python中SocketServer 实现客户端与服务器间非阻塞通信
Dec 15 Python
利用Python在一个文件的头部插入数据的实例
May 02 Python
IntelliJ IDEA安装运行python插件方法
Dec 10 Python
Python3 Post登录并且保存cookie登录其他页面的方法
Dec 28 Python
python爬虫获取小区经纬度以及结构化地址
Dec 30 Python
python常用库之NumPy和sklearn入门
Jul 11 Python
浅谈Python 递归算法指归
Aug 22 Python
Python实现括号匹配方法详解
Feb 10 Python
Python OpenCV超详细讲解基本功能
Apr 02 Python
python关于倒排列的知识点总结
Oct 13 #Python
Python如何使用ElementTree解析xml
Oct 12 #Python
Django ModelForm组件原理及用法详解
Oct 12 #Python
Python ConfigParser模块的使用示例
Oct 12 #Python
python修改微信和支付宝步数的示例代码
Oct 12 #Python
教你如何用python操作摄像头以及对视频流的处理
Oct 12 #Python
Django限制API访问频率常用方法解析
Oct 12 #Python
You might like
php中的curl_multi系列函数使用例子
2014/07/29 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
php HTML无刷新提交表单
2016/04/05 PHP
php使用fullcalendar日历插件详解
2019/03/06 PHP
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
javascript动态控制服务器控件实例
2014/09/05 Javascript
Javascript学习笔记之数组的构造函数
2014/11/23 Javascript
JS实现仿苹果底部任务栏菜单效果代码
2015/08/28 Javascript
跟我学习javascript的定时器
2015/11/19 Javascript
超简单的Vue.js环境搭建教程
2017/03/17 Javascript
Nuxt配合Node在实际生产中的应用详解
2018/08/07 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
2018/09/16 Javascript
vue项目中实现的微信分享功能示例
2019/01/21 Javascript
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
2019/08/17 Javascript
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
2020/02/12 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
2020/11/06 Javascript
[10:49]2014国际邀请赛 叨叨刀塔第二期为真正的电竞喝彩
2014/07/21 DOTA
[01:01:52]DOTA2-DPC中国联赛正赛 iG vs LBZS BO3 第一场 3月4日
2021/03/11 DOTA
Python程序语言快速上手教程
2012/07/18 Python
Python提取频域特征知识点浅析
2019/03/04 Python
Django项目创建到启动详解(最全最详细)
2019/09/07 Python
PYcharm 激活方法(推荐)
2020/03/23 Python
python能在浏览器能运行吗
2020/06/17 Python
python分布式爬虫中消息队列知识点详解
2020/11/26 Python
举例讲解Python装饰器
2020/12/24 Python
CSS3 Media Queries详细介绍和使用实例
2014/05/08 HTML / CSS
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
销售工作岗位职责
2013/12/24 职场文书
留学推荐信怎么写
2014/01/25 职场文书
副职竞争上岗演讲稿
2014/05/12 职场文书
起诉离婚协议书样本
2014/11/25 职场文书
2015年护士长个人工作总结
2015/04/24 职场文书
兴趣班停课通知
2015/04/24 职场文书
教师听课学习心得体会
2016/01/15 职场文书
Python中with上下文管理协议的作用及用法
2022/03/18 Python
python中数组和列表的简单实例
2022/03/25 Python