方案递归 - int 的力量
scheme recursion - power of an int
我正在尝试实现一个函数来判断参数是否为 2 的幂。这就是我所拥有的
(define (powof2 x) (cond
[(and (even? x) (> x 1)) ((powof2 (/ x 2)))]
[else (equal?(x 1))]))
但是当我尝试使用参数 12 运行 时,我收到错误消息:
错误:3 不是函数 [powof2, powof2, powof2, (anon)]
有什么帮助吗?
谢谢!
啊那些括号 ;-)
(define (powof2 x)
(cond
[(and (even? x) (> x 1)) (powof2 (/ x 2))]
[else (= x 1)]))
请注意,在第 3 行和第 4 行中多了一对括号,在第 4 行中,您应该使用 =
来比较数字。
我正在尝试实现一个函数来判断参数是否为 2 的幂。这就是我所拥有的
(define (powof2 x) (cond
[(and (even? x) (> x 1)) ((powof2 (/ x 2)))]
[else (equal?(x 1))]))
但是当我尝试使用参数 12 运行 时,我收到错误消息: 错误:3 不是函数 [powof2, powof2, powof2, (anon)]
有什么帮助吗?
谢谢!
啊那些括号 ;-)
(define (powof2 x)
(cond
[(and (even? x) (> x 1)) (powof2 (/ x 2))]
[else (= x 1)]))
请注意,在第 3 行和第 4 行中多了一对括号,在第 4 行中,您应该使用 =
来比较数字。