Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Scheme] Почему ошибка???? 
V
    Опции темы
MMMar
Дата 5.5.2008, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 5.5.2008
Где: Н.Новгород

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



вот код

(defun power (m n)
  (cond ((zerop n) 1)
        (t (* m (power m (- n 1))))))

вот что выдает

Welcome to DrScheme, version 372 [3m].
Language: Textual (MzScheme, includes R5RS).
. reference to undefined identifier: defun
> 

Почему выдает ошибку на DEFUN??????????
PM MAIL   Вверх
adejneka
Дата 6.5.2008, 05:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 8.7.2005
Где: Москва, Россия

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



DrScheme реализует Scheme, а не Lisp. Попробуйте такой код:

Код

(define (power m n)
  (cond ((= n 0) 1)
        (else (* m (power m (- n 1))))))

или
Код
(define (power m n)
  (let loop ((res 1)
             (n n))
    (cond ((= n 0) res)
          (else (loop (* res m) (- n 1))))))

PM MAIL   Вверх
MMMar
Дата 6.5.2008, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 5.5.2008
Где: Н.Новгород

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



Спасибо большое!
А нельзя сделать так чтобы запускал с defun???
PM MAIL   Вверх
adejneka
Дата 6.5.2008, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 8.7.2005
Где: Москва, Россия

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



А почему Вы не хотите использовать для запуска программ на Лиспе интерпретатор/компилятор Лиспа?
PM MAIL   Вверх
MMMar
Дата 6.5.2008, 21:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 5.5.2008
Где: Н.Новгород

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



А где можно скачать????
PM MAIL   Вверх
adejneka
Дата 6.5.2008, 22:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 8.7.2005
Где: Москва, Россия

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



PM MAIL   Вверх
MMMar
Дата 6.5.2008, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 5.5.2008
Где: Н.Новгород

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



А можно еще краткую инструкцию как там все работает, а то так много кнопочек????
Где писать и как запускать???
я скачала LispWorks Personal Edition 5.0.1

Это сообщение отредактировал(а) MMMar - 6.5.2008, 23:41
PM MAIL   Вверх
adejneka
Дата 7.5.2008, 05:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 105
Регистрация: 8.7.2005
Где: Москва, Россия

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



File->New/Open. Открывается окно редактора (Editor). В нем набираете текст программы. Под правой кнопкой мыши - меню с пунктами "откомпилировать буфер"/"откомпилировать одно определение". Первый пункт полезен, когда Вы только что открыли новый большой проект, второй - в процессе работы после мелкой правки одной функции.
Для запуска программы переходите в окно Listener и набираете код, который нужно выполнить. Если произошла ошибка - выводится информация о ней и приглашение отладчика. В нем можно опять-таки выполнять любой код на Лиспе и есть дополнительные команды для просмотра стека и выхода на верхний уровень (:c <n> или выбор restart из контекстного меню).
PM MAIL   Вверх
MMMar
Дата 7.5.2008, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 5.5.2008
Где: Н.Новгород

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



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

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

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


 




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


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

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