Регистрация
26 Авг 2013
Сообщения
72
Репутация
0
Спасибо
0
Монет
0
procedure F(n:integer);
begin
if n>=6 then
begin
Writeln(n);
F(n-3);
F(n-1);
end;
end;

begin
F(9);
Readln;
end.
Сначала думал что выведет только 96 а вывел 96876. Как так? разве после того как n будет равен 3 он не выйдет из метода? что не так?
 
Чтоб тебе было понятней, представь, что при каждом вызове F создаётся и вызывается НОВАЯ процедура F, после чего продолжается выполнение текущей процедуры.
 
Назад
Сверху