24小时热门版块排行榜    

查看: 1673  |  回复: 1

额纪

木虫 (初入文坛)

[求助] 求完全数的时候出现了24

python的一个求完全数的程序
CODE:
def perfect(N):
        perfectNumber=[]
        for i in range(5,N):
                sum1=0
                for j in range(1,i/2+1):
                        if i%j==0:
                                sum1+=j
                                if sum1==i:
                                        perfectNumber.append(i)
        return perfectNumber

但是运行出来的结果是:
CODE:
>>> perfect(1000)
[6, 24, 28, 496]

谁能解释下为什么会出现24啊?
完全数:完全数(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。第三个完全数是496,有约数1、2、4、8、16、31、62、124、248、496,除去其本身496外,其余9个数相加,1+2+4+8+16+31+62+124+248=496。后面的完全数还有8128、33550336等等。(摘自百度百科)
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

活在当下,做好自己
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
额纪: 金币+10, ★★★★★最佳答案, 谢谢 2013-03-08 21:56:16
xzhdty: 金币+1, 专家考核, 谢谢骠骑将军 2013-03-09 22:47:31
是缩进问题,你必须把内层循环跑完了才能判断是否sum1和i相等,不能再内层循环里面判断
CODE:
def perfect(N):
    nums = []
    for i in range(5,N):
        sum1 = 0
        for j in range(1,i/2+1):
            if i%j==0:
                sum1 += j
        if sum1==i:
            nums.append(i)
    return nums

print perfect(1000)

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2013-03-08 00:22:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 额纪 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 今年也是没消息就是没中么 +5 vito刘 2026-06-13 9/450 2026-06-14 11:31 by newfuzzy1
[论文投稿] 买卖文章的刷屏了! +3 能丫 2026-06-13 3/150 2026-06-14 09:20 by bobvan
[考研] *O_o^ +3 jk31rb6vyz 2026-06-12 3/150 2026-06-14 09:08 by 8bmv3h4hvh
[找工作] *囍 +4 m584r2z4j3 2026-06-12 4/200 2026-06-14 09:06 by 8bmv3h4hvh
[论文投稿] ⊙▽⊙ +3 m584r2z4j3 2026-06-11 3/150 2026-06-14 08:46 by 8bmv3h4hvh
[考博] →_→ +4 q1zg6x4lf3 2026-06-12 4/200 2026-06-14 08:28 by 8bmv3h4hvh
[考研] O(∩_∩)O +4 q1zg6x4lf3 2026-06-12 5/250 2026-06-14 08:23 by 8bmv3h4hvh
[硕博家园] O(∩_∩)O +6 jk31rb6vyz 2026-06-12 8/400 2026-06-14 08:10 by 8bmv3h4hvh
[考博] T^T +4 m584r2z4j3 2026-06-11 4/200 2026-06-14 08:08 by 8bmv3h4hvh
[公派出国] π_π +5 m584r2z4j3 2026-06-11 5/250 2026-06-14 08:08 by 8bmv3h4hvh
[找工作] 售SCI文章,我:8.O.5.51O.5.4,科目齐全,可十急 +3 q1zg6x4lf3 2026-06-12 3/150 2026-06-13 19:07 by 1js5n6upxm
[公派出国] +4 q1zg6x4lf3 2026-06-12 4/200 2026-06-13 19:05 by 1js5n6upxm
[考研] T^T +6 m584r2z4j3 2026-06-11 6/300 2026-06-13 18:29 by lkmi35jdzt
[考研] o>_<o +5 m584r2z4j3 2026-06-11 5/250 2026-06-13 18:22 by lkmi35jdzt
[考博] T^T +4 jk31rb6vyz 2026-06-12 4/200 2026-06-13 12:09 by 80j16ujcu8
[找工作] 售SCI文章,我:8.O.5.51O.5.4,科目齐全,可十急 +4 q1zg6x4lf3 2026-06-12 4/200 2026-06-13 08:53 by t4hz8376wy
[考博] [急招]吉林大学招收26年9月入学考核制博士生1名,截止今晚24点前 +3 hehejin 2026-06-10 4/200 2026-06-12 18:24 by 冻雨天
[基金申请] 前几天时间戳更新了 +8 vito刘 2026-06-11 13/650 2026-06-12 14:17 by BlakeReary
[教师之家] AASSDDFF +3 m584r2z4j3 2026-06-11 3/150 2026-06-12 11:28 by zs48m4lz8g
[考博] 博士申请 +3 张城斐 2026-06-07 3/150 2026-06-08 09:15 by A大朋同学
信息提示
请填处理意见