3

Googleで明確な答えを見つけることができませんでしたが、OCamlでは複数行のifステートメントが推奨されていないようです(?)複数行で表示されるものには、begin endキーワードが含まれているようです。

現在、このエラーはnum = (num - temp) / 1025 ~ 27 文字目の行で発生していますError: Parse error: "end" expected after [sequence] (in [expr])。すべてを削除すると、同じ行でbegin endエラーが発生します。Error: This expression has type bool but an expression was expected of type int

let rec reverse_int num =
  if num / 10 == 0 then begin
    num
  end else begin
    let temp = num mod 10 in
    num = (num - temp) / 10

    let numDigits = string_of_int num

    temp * (10 * String.length(numDigits)) + reverse_int num
  end;;
4

1 に答える 1