1
我想學習F#並且我已經到了一個地步,我不明白我做錯了什麼。我寫了下面的代碼:f#匹配表達式 - 「規則永遠不會匹配」
let p = 0.2::0.2::0.2::0.2::0.2::[]
let world = "g"::"r"::"r"::"g"::"g"::[]
let measurements = "r"::"g"::[]
let pHit = 0.6
let pMiss = 0.2
let rec sense world probs measurement =
match world, probs with
| measurement::row, p::rop -> (p*pHit)::sense row rop measurement
| _::row, p::rop -> (p*pMiss)::sense row rop measurement
| [],_ -> []
| _,[] -> []
我的問題是,編譯器告訴我,這場比賽表現的第二個規則將永遠不會被匹配。 我試圖用第二條規則來表達的是,當「世界」列表的頭部與測量不同時,我們將在示例中進行如下計算。
任何人都可以給我這個提示嗎?