Как на паскале программу с рекурсией пропустить?
procedure F (n: longint);
begin
write (n);
F(n-1);
F(n div 2);
end;
допишите что нужно))

irinapak1985 irinapak1985    2   23.05.2020 16:35    0

Ответы
pashafil5 pashafil5  15.10.2020 07:09

Необходимо поставить условие выполнения, иначе рекурсия будет вечной. Вот один из вариантов (что первое в голову взбрело), что можно сделать с вашим кодом:

procedure F(n: longint); begin if n mod 2 = 0 then begin write(n, ' '); F(n - 1); F(n div 2); end; end; begin F(1024); end.

Да, "F(n - 1)" в моём примере лишняя, но главное - ответ на ваш вопрос: ставьте условие, при котором всё это должно выполнятся.

Пример работы:


Как на паскале программу с рекурсией пропустить? procedure F (n: longint); begin write (n); F(n-1);
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика