# -*- coding:utf-8 -*-
# @Author: CH
"""
@project: python study
@time:
@detail:
@else: DO NOT STOP STUDYING!!!
"""
# 题目 一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
#
# 程序分析 将每一对因子加进集合,在这个过程中已经自动去重。最后的结果要求不计算其本身。
def factor(num): #定义一个函数
target=int(num) #这个是干啥的?!下面没有target了
res=set()
for i in range(1,num):
if num%i==0:
res.add(i)
res.add(num/i)
return res
for i in range(2,1001):
if i==sum(factor(i))-i: #调用函数,不过不明白这个是啥意思
print('1000以内的完数有:',i)
python练手_19-完数
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 题目 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?