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编程中的文件读写及相关的文件对象方法讲解
Jan 19 Python
python使用paramiko实现远程拷贝文件的方法
Apr 18 Python
解决Python中字符串和数字拼接报错的方法
Oct 23 Python
Python Tkinter实现简易计算器功能
Jan 30 Python
Python基础之函数的定义与使用示例
Mar 23 Python
python sort、sort_index方法代码实例
Mar 28 Python
Python Django简单实现session登录注销过程详解
Aug 06 Python
简单了解pytest测试框架setup和tearDown
Apr 14 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
May 20 Python
Python+PyQt5+MySQL实现天气管理系统
Jun 16 Python
Python 随机按键模拟2小时
Dec 30 Python
详解修改Anaconda中的Jupyter Notebook默认工作路径的三种方式
Jan 24 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批量删除jQuery操作
2017/07/23 PHP
Laravel关联模型中过滤结果为空的结果集(has和with区别)
2018/10/18 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
FireFox JavaScript全局Event对象
2009/06/14 Javascript
html中table数据排序的js代码
2011/08/09 Javascript
基于jquery的弹出提示框始终处于窗口的居中位置(类似于alert弹出框的效果)
2011/09/28 Javascript
JS的Document属性和方法小结
2013/09/17 Javascript
js中回调函数的学习笔记
2014/07/31 Javascript
用js判断是否为360浏览器的实现代码
2015/01/15 Javascript
JavaScript类型系统之布尔Boolean类型详解
2016/06/26 Javascript
JS实现可编辑的后台管理菜单功能【附demo源码下载】
2016/09/13 Javascript
JS实现旋转木马式图片轮播效果
2017/01/18 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
Vue-Cli中自定义过滤器的实现代码
2017/08/12 Javascript
JavaScript实现随机数生成器(去重)
2017/10/13 Javascript
Vue 理解之白话 getter/setter详解
2019/04/16 Javascript
jQuery实现王者荣耀手风琴效果
2020/01/17 jQuery
JS内置对象和Math对象知识点详解
2020/04/03 Javascript
分析在Python中何种情况下需要使用断言
2015/04/01 Python
详解Python2.x中对Unicode编码的使用
2015/04/03 Python
Python实现处理管道的方法
2015/06/04 Python
python简单实现基于SSL的IRC bot实例
2015/06/15 Python
python3解析库lxml的安装与基本使用
2018/06/27 Python
python设定并获取socket超时时间的方法
2019/01/12 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
python随机模块random使用方法详解
2020/02/14 Python
解决pycharm修改代码后第一次运行不生效的问题
2021/02/06 Python
微软澳洲官方网站:Microsoft Australia
2017/01/10 全球购物
Kappa英国官方在线商店:服装和运动器材
2020/11/22 全球购物
在数据文件自动增长时,自动增长是否会阻塞对文件的更新
2014/05/01 面试题
工作时间上网检讨书
2014/02/03 职场文书
单位委托书范本(3篇)
2014/09/18 职场文书
武侯祠导游词
2015/02/04 职场文书
22句经典语录:送给优柔寡断和胡思乱想的朋友们
2019/12/13 职场文书
win10安装配置nginx的过程
2021/03/31 Servers
sql字段解析器的实现示例
2021/06/23 SQL Server