20 lines
387 B
Plaintext
20 lines
387 B
Plaintext
function isPerfect(n)
|
|
if (n < 2) or (n mod 2 = 1) then return False
|
|
#asumimos que los números impares no son perfectos
|
|
sum = 1
|
|
for i = 2 to sqr(n)
|
|
if n mod i = 0 then
|
|
sum += i
|
|
q = n \ i
|
|
if q > i then sum += q
|
|
end if
|
|
next
|
|
return n = sum
|
|
end function
|
|
|
|
print "Los primeros 5 números perfectos son:"
|
|
for i = 2 to 233550336
|
|
if isPerfect(i) then print i; " ";
|
|
next i
|
|
end
|