Написать пояснения к каждой строчке задачи
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. - служебное слово, заканчивающее описание операторов программы

Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку