Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > LISP > Лисп. Найти слова


Автор: Olga20 24.6.2010, 14:39
Найти все слова, которые есть в первом предложении и отсутствуют во втором.

примерная программа:

(set 'f (open "C:/clisp/input1.lsp" :if-does-not-exist NIL))
(set 'st1 (read-line f nil))
(close f)
(set 'f (open "C:/clisp/input2.lsp" :if-does-not-exist NIL))
(set 'st2 (read-line f nil))
(close f)
(set 'f (open "C:/clisp/output.lsp" :direction :output :if-exists :supersede))
(loop for x across st1 if (not(find x st2)) do (write-char x f) )
(close f)

Или
(defun MemberOf (obj lst)
 ((null lst) nil)
 ((equal obj (car lst)) T)
 (Member obj (cdr lst))
)
 
(defun Find (lst1 lst2)
 ((null lst) nil)
 ((not (MemberOf (car lst1) lst2))
  (Find (cdr lst1) lst2)
)
(
 (cons (car lst1) (Find (cdr lst1) lst2))
)
)
 но не то ни другое не работают =(((
Помогите

Автор: wwall 25.6.2010, 10:07
http://www.lisp.ru/forums.php?m=posts&p=359


если правильно понял задачу

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)