tasks a-s
This commit is contained in:
parent
47bf37c096
commit
b83f433714
12433 changed files with 156208 additions and 123 deletions
23
Task/Perfect-numbers/Pascal/perfect-numbers.pascal
Normal file
23
Task/Perfect-numbers/Pascal/perfect-numbers.pascal
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
program PerfectNumbers;
|
||||
|
||||
function isPerfect(number: longint): boolean;
|
||||
var
|
||||
i, sum: longint;
|
||||
|
||||
begin
|
||||
sum := 1;
|
||||
for i := 2 to round(sqrt(real(number))) do
|
||||
if (number mod i = 0) then
|
||||
sum := sum + i + (number div i);
|
||||
isPerfect := (sum = number);
|
||||
end;
|
||||
|
||||
var
|
||||
candidate: longint;
|
||||
|
||||
begin
|
||||
writeln('Perfect numbers from 1 to 33550337:');
|
||||
for candidate := 2 to 33550337 do
|
||||
if isPerfect(candidate) then
|
||||
writeln (candidate, ' is a perfect number.');
|
||||
end.
|
||||
Loading…
Add table
Add a link
Reference in a new issue