题目描述
If a number is exactly equal to the sum of its factors, this number is called the “Perfect number.”
For example, the factor of 6 is 1, 2, 3, and 6 = 1 + 2 + 3, so 6 is a “perfect number”.
Write a program to find all the perfect number within {1,2,3…N} (N is given from the input) and output their factors in the following format:
6 its factors are 1 2 3
输入
N
输出
? its factors are ? ? ?
样例输入 Copy
1000
样例输出 Copy
6 its factors are 1 2 3
28 its factors are 1 2 4 7 14
496 its factors are 1 2 4 8 16 31 62 124 248
n=int(input())
s=0
for i in range(1,n+1):
s=0
s1=[]
for j in range(1,i//2+1):
if(i%j==0):
s=s+j
s1.append(j)
if s==i:
print('%d its factors are'%i,end=' ')
for each in s1:
print(each,end=' ')
print()