任务描述

  本关任务:编写Python程序,求出10000以内的所有完全数。

相关知识

  为了完成本关任务,你需要掌握:
  1.while循环语句
  2.while循环的嵌套
  3.完全数的概念

while循环语句

  如果需要在满足条件的情况下重复执行一段代码,此时可以借助循环。在Python语言中,常用的循环语句有while循环和for循环。其中,while循环的语法格式如下:
while 表达式:
语句块
  说明:作为while循环判断条件的表达式,可以是任何形式的Python语言表达式,当表达式的结果为True或者相当为True时,条件成立且可以执行循环;当表达式的结果为False或者相当为False时,条件不成立且循环终止。
  另外,任何非零、或非空串、非None的表达式的值均为True。

while循环的嵌套

  如果while循环体里还有while循环,就称为while循环嵌套。
  说明:
  (1)while循环嵌套一般适用于外层循环一次内层循环N次的情况;
  (2)最内层循环体执行的次数等于每一层循环执行次数的乘积。

完全数的概念

  完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
  最小的完全数是6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6。
  第二个完全数是28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。
  除此之外,还有更大的完全数。

编程要求

  补全程序,使程序可以正常运行,并求出10000以内的所有完全数。
  要求:
  1.求出10000以内的所有完全数;
  2.任务程序已经给出了部分代码,程序中的【】表示缺失的代码。请在【】内补上合适的代码,使得程序可以正确求出10000以内的所有完全数;
  3.补全程序后,一定要将【】删除,否则程序无法运行。

测试说明

  平台会对你编写的代码进行测试:
  测试集1:
  测试输入:无需输入
  预期输出:6 28 496 8128


开始你的任务吧,祝你成功!

# 要求:
# 1.求出10000以内的所有完全数
# 2.将下面程序中的【】补上合适的代码,使得程序可以正确求出10000以内的全部完全数
# 3.补全程序后,一定要将【】删除,否则程序无法运行###################### 程序开始 ######################n = 1         # 设变量n表示当前要判断的正整数,初值为1############ 补全下面的while循环嵌套的代码 ###########while n <= 10000:i = 1       # 变量i是内循环控制变量,用来遍历n中的所有因子sum = 0  # 变量sum是用来将n中的所有真因子累加求和while(i<n): # 该层while循环用来求当前n值的全部真因子之和if(n%i==0):sum = sum + ii = i + 1if n == sum:  # 判断当前n的值是否为完全数print("%d是一个完全数"%(n))n = n+1       # 变量n变为下一个要考察的正整数###################### 程序结束 ######################

求10000以内的所有完全数相关推荐

  1. python完全数的做法_python编程求10000以内的完全数

    题目:编程求10000以内的完全数. 完全数:数字所有真因子(即除了自身以外的约数)的和,等于数字本身. 例如:第一个完全数是6,它有约数1.2.3.6,除去它本身6外,其余3个数相加,1+2+3=6 ...

  2. 一些简单的java编程题(1) ————求10000以内的完数

    版权声明:本文为博主原创文章,未经博主允许不得转载. /* (程序头部注释开始) 版权声明:保留个人权利. 如程序有不当之处,敬请指正.* 文件名称: <一些简单的java编程题(1) ---- ...

  3. openjudge 14:求10000以内n的阶乘

    14:求10000以内n的阶乘 总时间限制: 5000ms 内存限制: 655360kB 描述 求10000以内n的阶乘. 输入 只有一行输入,整数n(0<=n<=10000). 输出 一 ...

  4. 信息学奥赛一本通 1172:求10000以内n的阶乘 | OpenJudge NOI 1.6 14:求10000以内n的阶乘

    [题目链接] ybt 1172:求10000以内n的阶乘 OpenJudge NOI 1.6 14:求10000以内n的阶乘 [题目考点] 1. 高精度 考察:高精乘低精 高精度计算讲解 [解题思路] ...

  5. 信息学奥赛一本通(1172:求10000以内n的阶乘)

    1172:求10000以内n的阶乘 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 22142     通过数: 5506 [题目描述] 求10000以内n的阶乘. ...

  6. 求10000以内n的阶乘(信息学奥赛一本通-T1172)

    [题目描述] 求10000以内n的阶乘. [输入] 只有一行输入,整数n(0≤n≤10000). [输出] 一行,即n!的值. [输入样例] 4 [输出样例] 24 [源程序] #include< ...

  7. 求10000以内质数(以前都是直接打表,现在问到怎么求,瞬间词穷了,还是应该搞懂)

    对于求10000以内质数,首先先考虑这个确定性范围的问题,后面再考虑复杂的. 前言摘抄:素数是除了1和它本身之外再不能被其他数整除的自然数.由于找不到一个通项公式来表示所有的素数,所以对于数学家来说, ...

  8. matlab输出10000以内的素数,matlab求10000以内的素数

    改完的如下: clear all disp('10000以内全体素数:') count=0; for i=2:10000 j=2; % 每次外循环,j都要从头再来,所以要拿到外循环里. k=sqrt( ...

  9. 求10000以内所有的质数

    首先,要清楚质数(素数)的概念.质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则 ...

最新文章

  1. Jenkins的环境部署
  2. Swoole 源码分析——Server模块之OpenSSL(下)
  3. f1 score 代码_2019JDATA-用户对品类下店铺的购买预测方案及代码分享(亚军)
  4. django_rest_framework之解析器、渲染器
  5. BAT机器学习面试1000题系列(第1~10题)
  6. js中时间戳与日期格式的相互转换
  7. Linux使用locate命令查找,Linux如何使用locate命令查找数据(2)
  8. NetBeans+xdebug解决无法连接xdebug问题
  9. Unet车牌分割,矫正
  10. 如何解决”ArcGIS Server Site is currently being configured by another administrative operation“的问题
  11. 语音识别结合应用场景 各位大咖也有一些精彩论点
  12. 我的十大期望,已经过去五年了,我看看还需要多少年
  13. 26个字母与ASCII值对照表
  14. Neo4j Desktop 添加算法插件Graph Algorithms
  15. 【机器学习】【数学推导】神经网络(NN)及误差逆传播(BP详细推导过程)
  16. 深度学习蓄势待发,即将“爆破”欧拉方程
  17. 策略模式、工厂模式、装饰者模式总结解析
  18. Twitter CEO自曝成长经历:生活充满了偶然
  19. 华为Ascend昇腾计算产业介绍
  20. 如何将逻辑地址转换成物理地址

热门文章

  1. 如何在以太坊浏览器上上传发布合约源码(合并上传单文件方式)
  2. 累计吞吐量——用集成显卡+独立显卡助力全速AI推理
  3. docker-compose部署加使用Yearning-SQL审核平台
  4. 【AI风向标】LeCun、周志华、吴恩达、李开复等众神展望AI的2020年
  5. 如何选择才更容易成功?什么才是中国好女票? | 数据周报
  6. 为什么要重新运营以前的公众号呢?
  7. php做远程桌面,Linux远程桌面实现步骤
  8. 4444: 开宝箱——指针基础
  9. C语言学习-黑洞数(C语言代码实现)
  10. 无锡职业培训——不考初会直接考注会合适吗?