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设计模式编程之桥接模式的运用
Mar 02 Python
深入理解python中的闭包和装饰器
Jun 12 Python
Python备份目录及目录下的全部内容的实现方法
Jun 12 Python
Python进程间通信Queue实例解析
Jan 25 Python
python pandas 组内排序、单组排序、标号的实例
Apr 12 Python
神经网络(BP)算法Python实现及应用
Apr 16 Python
python 自动批量打开网页的示例
Feb 21 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
Aug 31 Python
使用python 将图片复制到系统剪贴中
Dec 13 Python
基于Tensorflow批量数据的输入实现方式
Feb 05 Python
python实现遍历文件夹图片并重命名
Mar 23 Python
Python命名空间及作用域原理实例解析
Aug 12 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
解析smarty模板中类似for的功能实现
2013/06/18 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
PHP CURL获取返回值的方法
2014/05/04 PHP
ThinkPHP发送邮件示例代码
2016/10/08 PHP
php扩展开发入门demo示例
2019/09/23 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
jquery实现不同大小浏览器使用不同的css样式表的方法
2014/04/02 Javascript
jQuery学习笔记之jQuery构建函数的7种方法
2014/06/03 Javascript
JavaScript DSL 流畅接口(使用链式调用)实例
2015/03/15 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
Vue实现todolist删除功能
2018/06/26 Javascript
webpack4.x打包过程详解
2018/07/18 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
2018/08/22 Javascript
微信小程序 WXML节点信息查询详解
2019/07/29 Javascript
vue-property-decorator用法详解
2019/12/12 Javascript
在Angular中实现一个级联效果的下拉框的示例代码
2020/05/20 Javascript
原生JS实现拖拽功能
2020/12/16 Javascript
Python实现测试磁盘性能的方法
2015/03/12 Python
使用PDB简单调试Python程序简明指南
2015/04/25 Python
python实现基本进制转换的方法
2015/07/11 Python
人机交互程序 python实现人机对话
2017/11/14 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
Python面向对象之接口、抽象类与多态详解
2018/08/27 Python
pandas通过loc生成新的列方法
2018/11/28 Python
set在python里的含义和用法
2019/06/24 Python
Django实现文章详情页面跳转代码实例
2020/09/16 Python
python切割图片的示例
2020/11/12 Python
HTML5学习笔记之html5与传统html区别
2016/01/06 HTML / CSS
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
英国首屈一指的票务公司:See Tickets
2019/05/11 全球购物
介绍一下代理模式(Proxy)
2014/10/17 面试题
销售顾问的岗位职责
2013/11/13 职场文书
公司营业员的自我评价
2014/03/04 职场文书
幼儿园六一儿童节活动方案
2014/08/26 职场文书
纺织工程专业推荐信
2014/09/08 职场文书