51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2204|回复: 7
打印 上一主题 下一主题

用python打印出来1000内那些数字等于它的约数之和?

[复制链接]
  • TA的每日心情
    无聊
    2018-5-10 09:16
  • 签到天数: 172 天

    连续签到: 2 天

    [LV.7]测试师长

    跳转到指定楼层
    1#
    发表于 2017-6-15 19:18:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    用python打印出来1000内那些数字等于它的约数之和?比如6=1+2+3


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情

    2021-10-20 11:16
  • 签到天数: 121 天

    连续签到: 1 天

    [LV.7]测试师长

    2#
    发表于 2017-6-16 08:21:22 | 只看该作者
    围观等答案
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-5-3 18:09
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    3#
    发表于 2017-6-16 09:43:04 | 只看该作者
    这是算法问题  兄弟,你谷歌下吧
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2024-11-1 14:56
  • 签到天数: 1182 天

    连续签到: 1 天

    [LV.10]测试总司令

    4#
    发表于 2017-6-16 09:45:10 | 只看该作者
    这个在网上一搜一大堆的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2020-2-2 12:43
  • 签到天数: 630 天

    连续签到: 1 天

    [LV.9]测试副司令

    5#
    发表于 2017-6-16 10:02:23 | 只看该作者
    http://www.bubuko.com/infodetail-1437204.html  网上还真是多答案

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10 赶快去商城换取奖.

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2024-7-8 09:00
  • 签到天数: 943 天

    连续签到: 1 天

    [LV.10]测试总司令

    6#
    发表于 2017-6-16 11:05:06 | 只看该作者
    这  算法  我都快不记得约数是啥了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-5-10 09:16
  • 签到天数: 172 天

    连续签到: 2 天

    [LV.7]测试师长

    7#
     楼主| 发表于 2017-6-17 10:21:18 | 只看该作者
    libingyu135 发表于 2017-6-16 10:02
    http://www.bubuko.com/infodetail-1437204.html  网上还真是多答案

    谢谢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-5-10 09:16
  • 签到天数: 172 天

    连续签到: 2 天

    [LV.7]测试师长

    8#
     楼主| 发表于 2017-6-17 10:23:09 | 只看该作者
    for i in range(1,1001):            #遍历1到1000所有的数字
         s = 0                          #将约数的和置0,这个赋值不能在for之外,外层for每循环一次,重置一次
        for j in range(1,i):           #遍历1到(i-1)之间所有的数字,最后一个数字是出去i本身的之前的数字,约数从这些数字中取
               if i%j == 0:               #将i和j进行取余操作,取余为0的是i的约数
                   s += j                 #将约数j累加,和为s
        if s == i:                     #如果和与i相等(这个if语句要放在内层for循环之外,否则约数的和会相加的不完全,比如24这个数字,必须要约数全部相加完毕再与i比较相等)
               print(i)                   #这个i就是一个完全数,打印这个数字



    6
    28
    496
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-18 17:27 , Processed in 0.069594 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表