let rec parity n = if (n = 0) then
print_string "even" else if (n = 1)
print_string "odd" else
parity (n-2);;
与...相比。
let rec parity n =
match n with
| 0 -> "even"
| 1 -> "odd"
| _ -> parity(n-2);;
我还是这种语言的新手。 if-then-else中的错误特别是在我的print_string语句中出现语法错误。
答案 0 :(得分:3)
您的第二个if
遗失了then
。
(偶然地,if
之后的表达式不需要在OCaml中加上括号。)