【发布时间】:2014-03-15 03:59:44
【问题描述】:
一直在努力。不知道从这里去哪里..
我需要定义一个函数,它接受一个整数并返回一个从 0 到 n-1 的无限重复数字列表。
cycle n =
let aux1 v1 n
|(v1 == n) = v1 : (aux1 0 n)
| (v1<n) = v1 : (aux1 (v1 + 1) n)
in aux1 0 n
【问题讨论】:
-
您的解决方案不是最短的解决方案,也不是最“实用”的解决方案,但它很接近:我可以通过删除三个字符来修复您的代码。你为什么不向我们展示你得到了什么,并解释你为什么会被卡住?
-
我得到了模棱两可的出现“循环”。我昨天刚开始使用 Haskell,我什至不知道那是什么意思。
-
您可以使用
Main.cycle(在GHCi 中)或MyModule.cycle(如果您在模块中)或通过重命名函数来限定函数调用。问题是你调用了你的函数cycle,而already exists in the Prelude。
标签: list haskell recursion infinite