Нахождение элемента последовательности по его номеру - Free Pascal

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Помогите пожалуйста с заданием: Нужно написать программу нахождения элемента последовательности: - массивами пользоваться запрещено! - запрещено использовать операции возведения в степень, экспоненту и логарифм. a1(1 внизу как бы, как индекс)=1 a2=2 an+1(n+1 - индекс, внизу)=3an(n -индекс)+an-1(n-1 тоже индекс) Заранее спасибо!

Решение задачи: «Нахождение элемента последовательности по его номеру»

textual
Листинг программы
  1. var k:integer;
  2. function posl(n:integer):longint;
  3. begin
  4.  if n=1
  5.   then posl:=1
  6.   else
  7.    if n=2
  8.     then posl:=2
  9.     else posl:=3*posl(n-1)+posl(n-2)
  10. end;
  11. begin
  12.  write('номер элемента: ');readln(k);
  13.  writeln('a(',k,') = ',posl(k))
  14. end.

Объяснение кода листинга программы

В данном коде реализована рекурсивная функция posl для вычисления элемента последовательности по его номеру.

  1. Переменная k инициализируется как целочисленный тип данных, в который будет записан номер элемента.
  2. Функция posl принимает целочисленный тип данных n, который является номером элемента последовательности.
  3. Если n равно 1, то функция возвращает 1.
  4. Если n равно 2, то функция возвращает 2.
  5. В противном случае, функция вызывает саму себя (рекурсия) с аргументами n-1 и n-2, и возвращает результат умноженный на 3.
  6. После завершения работы функции posl, программа запрашивает у пользователя номер элемента и выводит соответствующий элемент последовательности.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы