我已经开始介绍F#的课程了,我在两个作业中遇到了一些麻烦.第一个让我创建两个函数,其中第一个函数接受输入并将其添加四个,第二个函数计算sqrt(x ^ 2 + y ^ 2).然后我应该为它们写两个函数表达式,但由于某种原因它给了我错误"Unexpected symbol'|' 在实施文件中".
let g = fun n -> n + 4;;
let h = fun (x,y) -> System.Math.Sqrt((x*x)+(y*y));;
let f = fun (x,n) -> float
|(n,0) -> g(n)
|(x,n) -> h(x,n);;
Run Code Online (Sandbox Code Playgroud)
第二个赋值要求我创建一个函数,它找到Fibonaccis数的序列.我写了下面的代码,但它似乎忘记了开头的0,因为输出总是n + 1而不是n.
let rec fib = function
|0 -> 0
|1 -> 1
|n -> fib(n-1) + fib(n-2)
;;
Run Code Online (Sandbox Code Playgroud)
请记住,这是第一周,所以我应该能够使用这些方法创建这些.