【发布时间】:2016-10-14 08:46:44
【问题描述】:
所以,我最近开始学习方案,通过 DrRacket,我必须为 sinus 编写一个迭代函数。这是我到目前为止得到的:
(define (calc-sin x n)
(define (iter ctr res fac xpow sign)
(if (>= ctr n)
res
(let* ((i (- (* 2 ctr) 1))
(newfac (* fac i (+ i 1)))
(newxpow (expt x i))
(newsign (- sign)))
(iter (+ ctr 1)
(+ res (/ (* newsign newxpow) newfac))
newfac
newxpow
newsign))))
(iter 1 1 1 1 -1))
代码运行,但每次我尝试插入一个值时,我都会得到错误的答案,并且一旦我尝试编辑我的答案,我就会得到一个bad syntax 错误。
如果有人可以看一下,我将不胜感激。
【问题讨论】:
标签: function math scheme racket