【发布时间】:2018-03-04 08:47:34
【问题描述】:
我是绝对的 OCaml 初学者。我想创建一个重复字符 20 次的函数。 就是这个功能,但是出错了,不能用。
let string20 s =
let n = 20 in
s ^ string20 s (n - 1);;
string20 "u";;
我想这样跑
# string20 "u"
- : string = "uuuuuuuuuuuuuuuuuuuu"
【问题讨论】:
-
您应该首先考虑递归函数的停止条件。然后你应该知道在 ocaml 中用于声明递归函数的语法(这是 ocaml 课程级别)。
-
你能输入你收到的错误吗?
-
有点跑题了,但
String.make 20 'u'能胜任。 -
string20接受单个参数s,但在第二次及之后提供了s和n-1。 -
你把这个问题编辑得面目全非了,所以我把它回滚了,因为原来的问题有几个很好的答案。