Вычисление числа Фибоначчи линейной рекурсией с одним рекурсивным вызовом - Lisp

  1. Помогите пожалуйста. написать на лиспе функцию fibo2, вычисляющие числа Фибоначчи линейной рекурсии с одним рекурсивным вызовом.


textual

Код к задаче: «Вычисление числа Фибоначчи линейной рекурсией с одним рекурсивным вызовом - Lisp»

(defun fib (n &optional (c 1) (p 0))
  (if (= n 1) c (fib (- n 1) (+ c p) c)))
 
==> FIB
 
(fib 1)
 
==> 1
 
(fib 2)
 
==> 1
 
(fib 3)
 
==> 2
 
(fib 4)
 
==> 3
 
(fib 5)
 
==> 5
 
(fib 100)
 
==> 354224848179261915075

СДЕЛАЙТЕ РЕПОСТ

15   голосов, оценка 4.267 из 5



Похожие ответы
  1. Определить функцию, выбирающую из заданного списка все числовые атомы. С использованием подсписков.

  1. Какое простое число является самым большим множителем числа 600851475143? Написать программы на Common Lisp и F# Помогите пожалуйста

  1. здравствуйте можете помочь в написание программы? к примеру сколько букв "а" или букв "б" в тексте

  1. Надо: Прочитать беззнаковое целое число из стандартного потока ввода и в каждом байте числа обнулить нулевой и седьмой биты и сделать единичными третий и четвертый биты. Результат вывести в стандартный поток вывода. Уже сделано: "обнулить нулевой и седьмой биты":

  1. Задача из форума Turbo Pascal: Прочитать натуральное число а, которое может содержать до 100 цифр Найти наибольшее число, получаемое левыми сдвигами цифр натурального числа.

  1. Помогите, пожалуйста, решить задание по !рекурсии! на Common Lispe: Написать программу, которая в исходном списке заменяет все элементы-целые числа остатками от их деления на 2. Список может содержать подсписки произвольной глубины вложения.

  1. Как написать делители числа n?

  1. Определите функцию, удаляющую из списка все четные числа.Решение должно быть составлено без использования функционалов и первоначальных элементов.Заранее спасибо)

  1. Найти сумму чисел целого числа(без учета знака) ... как можно быстрей плиз