魔法世界有一个毕达哥拉斯学派,他们将一个数如果恰好等于它的因子之和,则称它为“完美数”。并且认为完美数具有神奇的魔力。例如6的因子为1、2、3,而6=1+2+3,因此6是“完美数”。创始人毕达哥拉斯说:“6象征着完满的婚姻以及健康和美丽,因为它的部分是完整的,并且其和等于自身。”
小明同学想利用所学的Python编程,找出1000之内(包括1000)的所有完美数。程序代码如下:
def f(x):
s=0
for i in range(1,//2 + I):
if x%i= 0:
①
retum S
for i in range(2, 100):
t= f(i)
if ②
print(i, "是完美数", sep="")
(1)
程序中函数main部分的算法是(选填:解析箄法/枚举算法)
(2)
在程序①②划线处填入适当的语句表达式。
① ②
(3)
加框处代码有误,请修改,实现查找1000(包括1000)以内的完美数。
答案: 【1】枚举算法
【1】s=s+i【2】t==i
for I in range(2, 1001)