Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Рекурсия, на примере чисел Фибаначи 
V
    Опции темы
Kaskad
Дата 26.6.2005, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 324
Регистрация: 24.9.2004

Репутация: нет
Всего: 3



Спасибо! smile С корнями я разобрался. Теперь пытаюсь понять рекурсию на примере чисел Фибаначи:

Код

(defun fib (n)
  (cond ( (> n 2)  (+ (fib (n-1)) 
                               (fib (n-2))  ))
            ( t  n) ))


Что-то ему не нравится... smile может где-то что-то напутал? smile

Это сообщение отредактировал(а) Kaskad - 26.6.2005, 20:40


--------------------
Well come to America!
PM MAIL   Вверх
Alexey Dejneka
Дата 26.6.2005, 21:36 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ваш компилятор говорит, что именно ему не нравится? Например, SBCL пишет:
Код

; caught STYLE-WARNING:
;   undefined function: N-1


Соответственно, вместо (N-1) пишем (- N 1), аналогично с (N-2).
  Вверх
Kaskad
Дата 27.6.2005, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 324
Регистрация: 24.9.2004

Репутация: нет
Всего: 3



Во, заработало! Спасибо. smile
smile


--------------------
Well come to America!
PM MAIL   Вверх
_sg
Дата 24.4.2014, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 119
Регистрация: 16.5.2007

Репутация: 2
Всего: 2



как вариант:
Код

(defun fib (n)
  (if (> n 2) (+ (fib (- n 1)) (fib (- n 2))) n))

> (fib 10)
89

--------------------
vk.com/ansicommonlisp
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума LISP
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Lisp — это целое семейство языков. Всегда указывайте в теме используемый диалект (Common Lisp, Scheme и т.д.).
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | LISP | Следующая тема »


 




[ Время генерации скрипта: 0.0401 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.