完全平方数严格来讲是要特别处理下,除非能证明“完全平方数一定不是完全数”
def test(x):
if x < 3: return False
res = 1
for i in range(2, x):
if i * i > x: break
if x // i * i == x:
res += x // i
res += i
return res == x
n = int(input())
while n:
x = int(input())
if test(x): print(x, 'is perfect')
else: print(x, 'is not perfect')
n -= 1
这是什么代码。
python