> 1 <

Автор Сообщение

lisenog

Members


Статус

2 сообщений

Где: Russia
Род занятий:
Возраст:

#3509   2010-11-19 01:18 GMT+3 часа(ов)      
Есть фрагмент программы:

(defun game(x y)
(cond
(( < x y)(print "menshe")(setq y (read)))
(( > x y)(print "bolshe")(setq y (read)))
(( = x y)(print "ugadal!"))
)
)


Как закончить выполнение программы, тоесть чтобы больше не предлагало ввести число, при x=y ?

ander-skirnir

Members


Статус

227 сообщений
http://lisper.ru
Где: Ukraine
Род занятий: `'`,`',`',
Возраст: 30

#3512   2010-11-19 05:15 GMT+3 часа(ов)      
У тебя же здесь нет никаких циклов или рекурсий. При одном вызове функции, она выполнится один раз.
Завершить выполнение всей программы в sbcl можно через (quit).

Nameless One

Members


Статус

3 сообщений

Где: Russia
Род занятий:
Возраст:

#3528   2010-11-20 16:56 GMT+3 часа(ов)      
И здесь отмечусь)
(defun start-game (secret)
(format t "The game has started. Try to guess a secret!~%")
(labels ((make-guess ()
(format t "Make a guess: ")
(let ((guess (read)))
(cond ((> guess secret)
(format t "Too high!~%")
(make-guess))
((< guess secret)
(format t "Too low!~%")
(make-guess))
(t
(format t "Bingo! The secret number was ~d~%" secret))))))
(make-guess)))
 
(start-game (random 101))
> 1 <


Онлайн :

0 пользователь(ей), 71 гость(ей) :