Perfect numbers: Difference between revisions

Content deleted Content added
Line 1,581: Line 1,581:


=={{header|M2000 Interpreter}}==
=={{header|M2000 Interpreter}}==
New sub IsPerfect works perfect.

<lang M2000 Interpreter>
<lang M2000 Interpreter>
Module PerfectNumbers {
Module PerfectNumbers {
Line 1,653: Line 1,655:
Sub IsPerfect(factors, n)
Sub IsPerfect(factors, n)
local mm=each(factors,1, -2)
local mm=each(factors,1, -2)
local z=1@, s=1@
local z=1@, s=1@, z1=z, z2=z
while mm {
while mm {
z*=eval(mm)
z1=eval(mm)
if z1<>z2 then z=1@: z2=z1
z*=z1
s+=z+n/z
s+=z+n/z
}
}
Line 1,662: Line 1,666:
}
}
Print a$
Print a$
End Sub
End Sub
}
}