2014-07-17 17 views
3

所以我寫了F#中一個非常簡單的程序,應該總結低於1000所有的3倍數和5:F#:預計「在」或其他標記錯誤

[1..999] 
|> List.filter (fun x -> x % 3 = 0 || x % 5 = 0) 
|> let total = List.sum` 

然而,在很該方案得到以下錯誤的結束:

Unexpected end of input in expression. Expected 'in' or other token. 

我使用的是輕量級的語法,所以我不知道爲什麼F#要我用一個「的」語句。有什麼想法嗎?

回答

6

你可能是爲了做到這一點:

let total = 
    [1..999] 
    |> List.filter (fun x -> x % 3 = 0 || x % 5 = 0) 
    |> List.sum 

你所得到的,因爲它希望向前管後的功能,你可以有一個讓錯誤消息約束力,但作爲一個功能的一部分,預計至少一個參數。

+0

謝謝,那是爲我做的。 –

相關問題