题目转载:http://python.wzms.com/s/1/102
题目描述:
一个数如果恰好等于它的因子之和,这个数就称为完美数,
请编程打出某个范围内的所有完美数。
输入格式:
两行输入两个数,表示范围区间的左右端点值a,b
输出格式:
列出所有的完善数,一行内输出一个数
input()函数
- 描述:
- Python3.x 中 input() 函数接受一个标准输入数据,返回为 string 类型。
- Python2.x 中 input() 相等于 eval(raw_input(prompt)) ,用来获取控制台的输入。
- raw_input() 将所有输入作为字符串看待,返回字符串类型。而 input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )。
- 语法:input([prompt])
- 参数:prompt: 提示信息
代码:
a = int(input())
b = int(input())
for number in range(a, b+1):
factor_list = []
for factor in range(1, number):
if number % factor == 0:
factor_list.append(factor)
if sum(factor_list) == number:
print(number)
运行结果: