В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
Kiss537
Kiss537
26.04.2021 08:52 •  Информатика

Алгоритм вычисления значения функции f(n), где n- натуральное число, задан следующими соотношениями: f(1)=1, f(2)=2, f(n)=2*f(n-1)+(n-2)*f(n-2), при n> 2. чему равно значение функции f(6)?

Ответ:
arinakurbatovu
arinakurbatovu
08.07.2020 10:58
В приложении дана блок-схема с алгоритмом, вычисляющим значение функции F по рекуррентной схеме.
Ниже приводится запись программы на языке Pascal, содержащая две функции - рекуррентную F (строго в соответствии с алгоритмом) и рекурсивную Fr.
Вывод иллюстрирует работу программы для значения аргумента n=6

function F(n: integer): integer;
{рекуррентная}
var
  i, p: integer;
  fn1, fn2: integer;

begin
  case n of
    1: Result := 1;
    2: Result := 2;
  else
    begin
      fn2 := 1;
      fn1 := 2;
      for i := 3 to n do
      begin
        p := 2 * fn1 + (i - 2) * fn2;
        fn2 := fn1;
        fn1 := p
      end;
      Result := p
    end
  end
end;

function Fr(n: integer): integer;
{рекурсивная - оцените изящество рекурсии!}
begin
  case n of
    1: Result := 1;
    2: Result := 2;
  else Result := 2 * Fr(n - 1) + (n - 2) * Fr(n - 2)
  end
end;

begin
  writeln(F(6), ' ', Fr(6))
end.

Тестовое решение:
142 142

ответ: значение функции F(6) равно 142.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?