ОТ
Олег Тарураев

Как организовать цикл ввода данных в список

Нужна помощь!! !
Как на ЛИСПе организовать цикл ввода пользовательских чисел и формирование списка.
Ввод данных должен прекратиться при вводе пользователем nil.

МС
Максим С

Каком Лиспе?

Лисп -- семейство языков с общей идеей "данные и программы -- есть списки". Самые распространенные диалекты -- Common Lisp, Scheme. Clojure, работающий на JVM, тоже становится довольно популярным. Есть специализированные диалекты, к примеру, AutoLisp предназначен для автоматизации задач в AutoCAD'е.

Пример на Common Lisp, используя рекурсию:

(defun input ()
(let ((x (read)))
(if (not (null x)) (cons x (input)))))

(print (input))

Тоже самое на scheme (интерпретатор guile):

(define (input)
(let ((x (read)))
(if (not (null? x)) (cons x (input)) '())))

(display (input))

Похожие вопросы
Как организовать выход из цикла while(a!=q) при нажатии определенной клавиши,
Цикл и ввод с клавиатуры. Джава
Люди как организовать цикл по строкам?
Необходимо запретить ввод невозможных данных в базе данных
Помогите со вводом данных в PHP!
Помогите сделать ввод данных в PHP
Ввод данных пользователем на лиспе в циклелисп
как организовать выход из цикла при не выполнении двух любых условий
как организовать выход из цикла while если не выполнится два условия (язык СИ)
Организовать ручной ввод двумерного массива. И вовод для его контроля. Delphi7