快活林资源网 Design By www.csstdc.com

前言

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

题目:

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

【描述】求m-n以内所有素数之和并输出。"htmlcode">

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';

结束

快活林资源网 Design By www.csstdc.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
快活林资源网 Design By www.csstdc.com

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?