是一段代码,用于确定一个数字是否为完美数字。完美数字指的是一个正整数,其所有真因子(除了它自身)的和等于它本身。
下面是一个用于显示每个完美数字的程序的示例代码:
def is_perfect_number(num):
factors = []
for i in range(1, num):
if num % i == 0:
factors.append(i)
if sum(factors) == num:
return True
else:
return False
def display_perfect_numbers(start, end):
perfect_numbers = []
for i in range(start, end+1):
if is_perfect_number(i):
perfect_numbers.append(i)
return perfect_numbers
start_num = 1
end_num = 10000
perfect_nums = display_perfect_numbers(start_num, end_num)
print("Perfect numbers from", start_num, "to", end_num, ":")
for num in perfect_nums:
print(num)
这段代码首先定义了两个函数:is_perfect_number
和display_perfect_numbers
。is_perfect_number
函数用于确定一个数字是否为完美数字,它通过获取数字的真因子并计算它们的总和来判断。如果总和等于该数字本身,则返回True,否则返回False。
display_perfect_numbers
函数接受两个参数:起始数字和结束数字。它遍历从起始数字到结束数字的所有数字,并调用is_perfect_number
函数来确定每个数字是否为完美数字。如果是完美数字,则将其添加到一个列表中。
最后,程序打印出起始数字到结束数字之间的所有完美数字。
这个程序可以用于显示给定范围内的所有完美数字。例如,如果将起始数字设置为1,结束数字设置为10000,那么程序将显示从1到10000之间的所有完美数字。
领取专属 10元无门槛券
手把手带您无忧上云