如何在OCaml中使let rec n read_int
该代码的目标是给定一个数字,实现多个操作,直到该数字等于42。我无法使let rec read\u int如何在OCaml中使let rec n read_int,ocaml,Ocaml,该代码的目标是给定一个数字,实现多个操作,直到该数字等于42。我无法使let rec read\u int let n = read_int () let rec check n = if n < 42 then begin Printf.printf "bad luck" end else if n = 42 then begin Printf.printf "u win" end else if n mod 5 = 0 t
let n = read_int ()
let rec check n =
if n < 42 then begin Printf.printf "bad luck" end
else if n = 42 then begin Printf.printf "u win" end
else if n mod 5 = 0 then begin check (n - 42) end
let n=read\u int()
让记录检查=
如果n<42,则开始打印F。打印F“坏运气”结束
否则,如果n=42,则开始打印。打印“u win”结束
否则,如果n mod 5=0,则开始检查(n-42)结束
- 如果只有一个表达式,则不需要使用
/开始
结束
- 如果每次调用
时都要调用
,请选中read_int
,然后:
不需要接受参数check
n
- 您必须在
check
- 然而,如果您想使用一个最初从标准输入读取的值调用
,然后通过递归调用check
传递,那么您需要:check
- 纯函数(递归)函数
接受参数检查
n
- 另一个函数
读取标准输入并将值传递给check\u input
check
检查
并非详尽无遗。如果函数中的n
参数为43
,会发生什么情况?嗯,这不少于42。它不等于42。而且它不能被5整除。也许你真的不想发生什么事,但你应该明确地说出来。