毕达哥拉斯

古希腊数学家毕达哥拉斯以直角三角形不变性而闻名:

\[h^2=w^2+a^2\]

在哪里? h 斜边是斜边, w 是底部的宽度,以及 a 是最高点。

我们可以这样计算Felix的斜边:

fun hypot (w:double, a:double) : double =>
  sqrt (w^2 + a^2)
;

println$ hypot (3.0, 4.0);

类型 double 是标准的双精度浮点实数。

这个 sqrt 函数在库中,并计算双精度数字的平方根。

操作员 ^ 表示求幂,在这种情况下,我们是平方,或者将参数本身乘以两次,即字面量 2 是类型的值 int ,一种小整数。

当然,接线员 + 是加法。

这个 fun 这里使用binder来定义函数。然后我们给出要使用的函数名,在本例中 hypot .

然后,在偏题中,我们给出了一个逗号分隔的参数规范列表。每个规范都是参数的名称,后跟其类型。

这是一个很好的实践,但不是必需的,遵循参数 : 函数的返回类型。

然后 => 符号用于开始根据参数定义函数的公式。

可以通过将函数应用于正确类型的参数(在本例中是两个类型数的对或元组)来使用该函数 double .

这个 println 然后使用应用程序运算符在应用程序上调用 $ .