Procedure F(n: integer); begin if n < 6 then begin write(n); F(n * 2); F(n + 2) end; if n... Procedure F(n: integer); begin if n < 6 then begin write(n); F(n * 2); F(n + 2) end; if n < 5 then begin write(n + 1); F(n + 2) end end; В паскале пишет (встречен конец файла а ожидалось begin) Как пофиксить ? Оператор program в Паскале обязательным не является. Более того, он ничего не делает. Procedure F(n: integer);begin if n < 6 then begin write(n); F(n * 2); F(n + 2) end; if n < 5 then begin write(n + 1); F(n + 2) endend;beginend. И ничего не ругается. только процедура не вызывается, поскольку автор ничего не написал, какие данные и т.п. Да я просто так сказал, там была пропущена точка с запятой. НЕ БЫЛА ОНА ПРОПУЩЕНА! Не нужна она там. Прежде чем советы раздавать, выучите синтаксис языка. закопилировал код, с той точкой запятой всё заработало. Враньё Про то, что не хватает Program, точек с запятыми и т.п. Не хватало, как было написано выше, основной программы.
Да, извините за путаницу. Процедура должна вызываться в основной программе для выполнения. Добавьте в конце кода следующие строки:
begin
F(1);
end.
Это вызовет процедуру F с параметром 1 и запустит выполнение кода. Извините за недоразумение.