【问题标题】:OCaml syntax issuesOCaml 语法问题
【发布时间】:2014-02-09 00:25:20
【问题描述】:

即使在 ocaml.org 文档的帮助下,也很难弄清楚我的函数出了什么问题。

let dist (x1, y1) (x2, y2) = 
    let x = (x2 - x1)^2 in
    let y = (y2 - y1)^2 in 
    (x + y) ^ (.5);; //line 13

我得到了

File "ish.ml", line 13, characters 12-13: 
Error: Syntax error

发生了什么事?

【问题讨论】:

    标签: ocaml


    【解决方案1】:

    您需要编写浮点常量,小数点前至少有一位。

    请注意,在 OCaml 中,^ 是字符串运算,而不是求幂。您可以使用** 进行求幂:

    # ( ** );;
    - : float -> float -> float = <fun>
    # 3.0 ** 0.5;;
    - : float = 1.73205080756887719
    

    【讨论】:

    • 和其他带点的浮点运算符:let x = (x2 -. x1)**2.0 in
    猜你喜欢
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-11
    • 1970-01-01
    • 1970-01-01
    • 2015-09-19
    • 2014-03-15
    相关资源
    最近更新 更多