我是這個函數式編程語言f#的新手,雖然這個小代碼可能存在幾個問題,但我只是好奇它爲什麼不運行。值或構造函數n沒有定義
let sum n : int -> int = s
let mutable s = 1
while s <= n do
s <- n(n+1)/2
printf "%A " s
let result = sum 4
它給了我錯誤代碼FS0039:值或構造函數n沒有定義。我不明白爲什麼。當我調用函數sum並將其賦值結果時,我傳遞了參數4(即n)。
你能告訴我你看到了什麼嗎?
謝謝。
我想使函數的遞歸:
let rec recSum (n:int):int =
if n > 0 then
recSum n * (n+1)/2
printf "%A " n
else
n
recSum 4
,但我不能讓它返回一個int。它不斷返回一個單位。
不好格式化? :-) – s952163