gpt4 book ai didi

scheme - 方案中的莱布尼茨公式

转载 作者:行者123 更新时间:2023-12-01 13:41:45 25 4
gpt4 key购买 nike

我花了一些时间在这里和整个互联网上查看有关此的问题,但我找不到任何对我有意义的东西。基本上我需要帮助实现方案中的函数,当你给它一个值 k 时评估莱布尼茨的公式。您输入的值让函数知道它应该计算系列中的多少个值。这是我目前所拥有的,我不确定我需要用什么方式来编写这个程序来让它工作。谢谢!

(define (fin-alt-series k)
(cond ((= k 1)4)
((> k 1)(+ (/ (expt -1 k) (+(* 2.0 k) 1.0)) (fin-alt-series (- k 1.0))))))

最佳答案

基本情况不正确。我们可以稍微清理一下代码:

(define (fin-alt-series k)
(cond ((= k 0) 1)
(else
(+ (/ (expt -1.0 k)
(+ (* 2 k) 1))
(fin-alt-series (- k 1))))))

更好的是,我们可以重写过程以使用尾递归,这样会更快:

(define (fin-alt-series k)
(let loop ((k k) (sum 0))
(if (< k 0)
sum
(loop (- k 1)
(+ sum (/ (expt -1.0 k) (+ (* 2 k) 1)))))))

例如:

(fin-alt-series 1000000)
=> 0.7853984133971936

(/ pi 4)
=> 0.7853981633974483

关于scheme - 方案中的莱布尼茨公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39564210/

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