【发布时间】:2018-02-27 01:23:45
【问题描述】:
所以我必须创建一个名为 frac-sum 的函数,它将两个函数的分数的总和从 -n 到 n 所以 f(n)/g(n) 作为分数和从 -n 到 n 的总和所以 f(-n)/g(-n) + ... f(n)/g(n)
它需要三个形参 f g 和 n。
到目前为止,我有这个应该可以工作但最终进入递归循环,这意味着我的基本情况有问题:
(define (negn n) (- (* n -1) 1))
(negn 1)
(define (frac-sum f g n)
(cond ((= n (negn n)) 0)
((= (g n) 0) (+ 0 (frac-sum f g (- n 1))))
((+ (/ (f n) (g n)) (frac-sum f g (- n 1))))))
我用它来测试它应该输出两个:
(frac-sum (lambda (x) (- x 1)) (lambda(x) x) 1)
【问题讨论】:
-
如果你用更直接和熟悉的符号
n = -(n+1)写下你的基本情况,可能更容易理解为什么它永远不会终止。