作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我花了一些时间在这里和整个互联网上查看有关此的问题,但我找不到任何对我有意义的东西。基本上我需要帮助实现方案中的函数,当你给它一个值 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/
我无法理解平等和本地定义之间的区别。例如,在阅读有关 set 的文档时战术: remember term as ident This behaves as set ( ident := term )
我正在开始我的 Python 冒险。我当前的程序非常简单,它必须使用莱布尼茨公式计算 pi,并在“a”varibale 的模块小于 x 时停止工作。到目前为止,它看起来像这样: from math i
我是一名优秀的程序员,十分优秀!