Какое число будет выведено в результате выполнения следующей программы? Постарайтесь...

0 голосов
70 просмотров

Какое число будет выведено в результате выполнения следующей программы? Постарайтесь ответить без запуска программы в среде программирования.
function F(N: integer) : longint;
begin
Result := 1;
if N > 0 then Result := F(N-1) +1;
end;
begin
Writeln(F(2012));
end.


Информатика (298 баллов) | 70 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
F(2012)=F(2011)+1 \\ F(2011)=F(2010)+1 \to F(2012)=F(2010)+2 \\ F(2010)=F(2009)+1 \to F(2012)=F(2009)+3 \\ ... \\ F(2)=F(1)+1 \to F(2012)=F(2)+2010 \\ F(1)=F(0)+1 \to F(2012)=F(0)+2012 \\ F(0)=1 \to F(2012)=1+2012=2013

Ответ: 2013
(142k баллов)
0 голосов

Получится 2012, так как функция для каждого N от 1 до 2012 прибавляет 1.

(434 баллов)
0

Да, но она определена и для N=0, и равна 1.

0

Да, собственно, запустите и увидите ответ 2013