Вывести значения рекурсивной функции при значениях аргумента от 1 до 10 включительно - Pascal ABC
Формулировка задачи:
Вывести значения рекурсивной функции при значениях аргумента от 1 до 10 включительно.
Найти член последовательности, заданной следующим образом:
y1=0; y2=10; yn=2∙yn-1-yn-2, где n>2.
Помогите пожалуйста, как-то не получается. :C
Решение задачи: «Вывести значения рекурсивной функции при значениях аргумента от 1 до 10 включительно»
textual
Листинг программы
function recursion(n :integer):integer; begin if n=1 then recursion:=0 else if n=2 then recursion:=10 else recursion:=2*recursion(n-1)-recursion(n - 2); end; Var n:integer; begin for n:=1 to 10 do writeln(recursion(n)); end.
Объяснение кода листинга программы
В данном коде объявлена рекурсивная функция recursion
, которая принимает целочисленный аргумент n
. Внутри функции проверяется базовый случай, когда n
равно 1, в этом случае функция возвращает 0. Если n
равно 2, то функция возвращает 10. В остальных случаях функция вызывает саму себя, передавая n-1
и n-2
в качестве аргументов, и умножает результат на 2.
Затем в блоке for
происходит итерация от 1 до 10 (включительно). На каждой итерации вызывается функция recursion
с аргументом n
и результат выводится на экран с помощью функции writeln
.
Таким образом, данный код выводит значения рекурсивной функции при аргументах от 1 до 10 включительно.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д