gpt4 book ai didi

lisp - 为什么在 Scheme 中出现未绑定(bind)变量错误?

转载 作者:太空宇宙 更新时间:2023-11-03 18:41:22 24 4
gpt4 key购买 nike

(define (even-odd x)
(if ( ==(% x 2 ) 0) (1) (0)))

当我打电话时(偶数-奇数 5) 我收到这条消息

;Unbound variable: %
;To continue, call RESTART with an option number:
; (RESTART 11) => Specify a value to use instead of %.
; (RESTART 10) => Define % to a given value.
; (RESTART 9) => Return to read-eval-print level 9.
; (RESTART 8) => Return to read-eval-print level 8.
; (RESTART 7) => Return to read-eval-print level 7.
; (RESTART 6) => Return to read-eval-print level 6.
; (RESTART 5) => Return to read-eval-print level 5.
; (RESTART 4) => Return to read-eval-print level 4.
; (RESTART 3) => Return to read-eval-print level 3.
; (RESTART 2) => Return to read-eval-print level 2.
; (RESTART 1) => Return to read-eval-print level 1.

;启动调试器? (是或否):

我做错了什么吗?另外让我知道如何在 edwin 中选择文本。

最佳答案

你这里有一些问题;也就是说,您弄错了要调用的过程的名称。

  • % 应该是 modulo
  • == 应该是 eqv?
  • 如 zvrba 所述,删除 0 和 1 周围的括号

或者,如果您只是想判断一个数字是偶数还是奇数,一种更简单、更简洁的方法是简单地使用内置的 even?

(even? 5)
> #f

或者如果你真的想要 0 和 1 作为结果,一个更简洁的表达式可以是

(if (even? x) 1 0)

关于lisp - 为什么在 Scheme 中出现未绑定(bind)变量错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9361097/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com