【发布时间】:2018-10-13 04:10:57
【问题描述】:
我可以看到cycle 如何用于实现重复列表(例如 [0,9,0,9,...],10/11 的十进制扩展),但是如何实现一个在稳定为重复模式之前有一些初始元素(例如 [3,1,4,2,8,5,7,1,4,2,8,5,7,...],十进制扩展22/7)?我希望这样的结构能够很好地与折叠等配合使用。
我的特别兴趣是表示小数和连分数,其中列表分别只包含数字或数字,但也有更一般类型的列表感兴趣,例如数字对。
Mathematica 实现了循环分数(RealDigits 和 FromDigits)和循环连分数(ContinuedFraction 和 FromContinuedFraction):
ContinuedFraction[Sqrt[13]] = {3,{1,1,1,1,6}}
和
RealDigits[22/7] = {{3,{1,2,8,5,7}},1}
这里有一个类似的问题:https://mathematica.stackexchange.com/questions/21998/building-a-continued-fraction,但结果似乎非常临时,我希望在 Haskell 中得到更干净的东西。
【问题讨论】:
-
这与这里的(字面)主题略有不同,但您可能也对this talk 感兴趣,关于在 Haskell 中使用连分数表示(以及另一种技术)。
标签: list haskell wolfram-mathematica infinite