О вводе строки, и выводе её модификации - Lisp
Формулировка задачи:
Мне просто нужен код делающий следующее:
При начале работы выводится приглашение (например
Vvedite slovo:
) Я ввожуSlenon
, нажимаю Enter - выводитсяPrivet, Slenon!
(Common LISP)Решение задачи: «О вводе строки, и выводе её модификации»
textual
Листинг программы
- (defun greeting (name)
- (format nil "Привет, ~A!~%" (cond ((null name) "чувак")
- ((zerop (length reply)) "никто")
- (t reply))))
- (defun hello ()
- (format *query-io* "~&Как вас зовут?~%")
- (finish-output *query-io*)
- (let ((reply (read-line *query-io*)))
- (write-line (greeting reply) *query-io*))
- (finish-output *query-io*))
Объяснение кода листинга программы
В коде определены две функции: greeting и hello.
- Функция greeting принимает один аргумент name и использует форматную строку для вывода сообщения, в которое подставляется значение name. Если name не указано, выводится слово «чувак». Если длина ответа равна нулю, выводится слово «никто». В противном случае выводится ответ.
- Функция hello сначала выводит вопрос «Как вас зовут?», затем считывает ответ, используя функцию read-line. Далее вызывается функция greeting с этим ответом, и её результат выводится на экран.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д