lisp计算圆的面积

跟着教程练习了一个求圆面积的公式 基础知识 - 水木社区Emacs版

(defun circle-area (radix)
  (let* ((pi 3.1415926)
         (area (* pi radix radix)))
    (message "直径为 %.2f 的圆面积是 %.2f" radix area)))

在minibuffer中输出

C-x C-e 执行了一次, “直径为 3.00 的圆面积是 28.27”

然后修改为

(defun circle-area (radius)
  (let* ((pi 3.1415926)
         (area (* pi radius radius)))
    (message "Radius %.2f Area:  %.2f" radius area)))

(circle-area 3)

C-x C-e 再次运行

minibuffer依然输出 “直径为 3.00 的圆面积是 28.27”

一个小时后C-x C-e 还是输出:

“直径为 3.00 的圆面积是 28.27”

这是什么问题?

函数有没有重新C-x C-e

(defun circle-area (radius)
  (let* ((pi 3.1415926)
         (area (* pi radius radius)))
    (message "Radius %.2f Area:  %.2f" radix area)))  ;; <- 先在此处C-x C-e

(circle-area 3)   ;; <- 然后在此处C-x C-e

此外,Radius难道不是半径么…

1 个赞

float-pi 有现成的。

1 个赞

教程里写错了.

谢谢…