function checkPerfectNumber(num): if num <= 1: return false
sum = 1 # 1 is always a proper divisor for i from 2 to sqrt(num): if num % i == 0: sum += i if i != num / i: # avoid duplicate for perfect square sum += num / i
return sum == num
(Implementation ready)
function checkPerfectNumber(num): if num <= 1: return false
sum = 1 # 1 is always a proper divisor for i from 2 to sqrt(num): if num % i == 0: sum += i if i != num / i: # avoid duplicate for perfect square sum += num / i
return sum == num