【发布时间】:2017-11-08 18:29:47
【问题描述】:
我是 Haskell 的初学者,我正在尝试在 Haskell 中创建一个无限列表,其中下一项通过以下公式找到
xn+1 = (xn + const / xn) div 2.
我一直在研究 iterate 命令,因为我想再次应用相同的函数来生成下一个答案。
然后我将使用 take 从列表中选择一定数量的元素。
但是我不确定在使用 iterate 时如何表示 xn。
我开始写take 10 (iterate (xn +5 /xn div 2) 1),我知道我需要替换 xn 但不确定用什么替换。
有人可以给我建议吗?
【问题讨论】:
-
它是
div (xn + const / xn) 2。div不是运算符,因此您不能使用中缀(没有反引号)。 -
我一直在使用带有反引号的 div,我在这里删除了它们,因为当我这样做时它会将 div 从代码列表中删除。
-
@JamesHamish 你必须通过在它前面加上一个反斜杠来转义引用:
`div` -
通过在其周围放置双反引号来引用包含反引号的代码。
标签: haskell