Написать пояснения к каждой строчке задачи
Program z3;
var
i,j,s: word;
begin
for i := 1 to 10000 do begin
s := 0;
for j:=1 to i div 2 do
if i mod j = 0 then
s := s+j;
if s = i then
write(i, );
end;
writeln;
readln;
end.
программа находит совершенные числа в диапазоне от 1 до 10000 (совершенное число - натуральное число, равное сумме всех своих собственных делителей)
Program z3; - заголовок программы
var - служебное слово, начинающее раздел описания переменных
i,j,s: word; - описание переменных i,j,s как числа от 0 до 65535
begin - служебное слово, начинающее описание операторов программы
for i := 1 to 10000 do begin - организация цикла по i от 1 до 10000
s := 0; - обнуление переменной s
for j:=1 to i div 2 do - организация цикла по j от 1 до целая_часть(i:2)
if i mod j = 0 then - если i делится на j без остатка,
s := s+j; - то переменную s увеличиваем на значение переменной j
if s = i then - если значения переменных s и i совпадают
write(i, ); - то распечатываем значение переменной i
end; - конец цикла по i
writeln; - пустой оператор печати, используется для организации печати с новой строки
readln; - пустой оператор чтения, используется для организации задержки экрана
end. - служебное слово, заканчивающее описание операторов программы
