Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
F# 无法执行基本算术_F# - Fatal编程技术网

F# 无法执行基本算术

F# 无法执行基本算术,f#,F#,在F#中,我在编写以下代码时收到一个错误: let records = {1..100} let middleElement= records |> Seq.length / 2 类型“int”与类型“a->int”不匹配 我知道这个错误是基本的。 但我对F#还不熟悉,真的不知道该怎么解决这个错误。您需要添加括号: let middleElement = (records |> Seq.length) / 2 在您的版本中,编译器将代码读取为 let middleElement

在F#中,我在编写以下代码时收到一个错误:

let records = {1..100}
let middleElement= records |> Seq.length / 2
类型“int”与类型“a->int”不匹配

我知道这个错误是基本的。
但我对F#还不熟悉,真的不知道该怎么解决这个错误。

您需要添加括号:

let middleElement = (records |> Seq.length) / 2
在您的版本中,编译器将代码读取为

let middleElement = records |> (Seq.length / 2)

。。。它会感到困惑,因为它认为您正试图将
length
函数除以2

我赞同托马斯·佩特里切克的回答,但你也可以这样写。:-)

let records = {1..100}
let middleElement = records |> Seq.length |> (/) <| 2
let records = {1..100}
let middleElement = let length = records |> Seq.length in length / 2;;