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


Автор: AcoN 14.12.2014, 18:57
Вместо префиксной формы создать Постфиксная
    ( аргумент1 аргумент2 ... аргументN функция)

Автор: _sg 6.1.2015, 18:51
вариант Common Lisp:
Код

(defun shift> (w)
  (when w (nconc (cdr w) (list (car w)))))

(defun >postfix (w)
  (loop for a in w collect (if (atom a) a (shift> a)) into b
        finally (return (shift> b))))
 
> (>postfix '())
NIL
> (>postfix '(+))
(+)
> (>postfix '(+ 1 2 3))
(1 2 3 +)
> (>postfix '(+ 4 (* 5 d) 7))
(4 (5 D *) 7 +)

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