在lisp中给符号赋一个负值

时间:2013-03-23 22:02:07

标签: lisp clisp

我是lisp的新手,我正在研究基本语法。我想转换:
r1 =( - b + sqrt(b ^ 2 - 4 * a * c))/(2 * a)
进入lisp格式。我认为我遇到的唯一问题是我不能让lisp将-b识别为符号b的负值。这是我到目前为止从lisp提示中得到的:

[17]> (setq a 1L0)
1.0L0
[18]> (setq b -1L0)
-1.0L0
[19]> (setq c -1L0)
-1.0L0
[20]> (setq r1 (+ (/ (sqrt (- (power b 2) (* (* 4 a) c))) (* 2 a)) -b))

*** - EVAL: variable -B has no value
The following restarts are available:
USE-VALUE      :R1      You may input a value to be used instead of -B.
STORE-VALUE    :R2      You may input a new value for -B.
ABORT          :R3      Abort main loop

1 个答案:

答案 0 :(得分:8)

使用

(- b)

否定b。它相当于

(- 0 b)