Ниже на пяти языках программирования записан рекурсивный алгоритм f. бейсик: function f(n) if n > 2 then f = f(n - 1) + f(n-2) else f = n end if end function python: def f(n): if n > 2: return f(n-1)+ f(n-2) else: return n паскаль: function f(n: integer): integer; begin if n > 2
then f : = f(n - 1) + f(n - 2) else f : = n; end; алгоритмический язык: алг цел f(цел n) нач если n > 2 то знач : = f(n - 1)+f(n - 2) иначе знач : = n все кон c: int f(int n) { if (n > 2) return f(n-1) + f(n-2); else return n; } чему будет равно значение, вычисленное алгоритмом при
выполнении вызова f(6)? с подробным описанием алгоритма решения .

qqwweerrqq qqwweerrqq    2   08.10.2019 21:30    24

Ответы
Maro8821 Maro8821  05.08.2020 07:51

Python:

def F(n):

   if n > 2:

       return F(n-1)+ F(n-2)

   else:

       return n

если n = 1 или n = 2, то F(n) = 1

F(1)=1

F(2)=1

F(3)=F(2)+F(1)=1+1=2

F(4)=F(3)+F(2)=2+1=3

F(5)=F(4)+F(3)=3+2=5

F(6)=F(5)+F(4)=5+3=8

ответ: F(6)=8

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика