私は最近、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
エラーを取得:これは私がこれまでに得たものです。 誰かが一見することができたら、私は本当にそれを感謝します。