我想在haskell中編寫函數,我希望該函數只求和奇數和3的列表中的元素相除。如何總結haskell中的元素(奇數除以3)
我的代碼是:
nieplist n = (n/2 > 1) && mod n 3 == 0
niepdodlist xs = sum $ filter nieplist xs
我認爲一切都應該工作,首先,我檢查,如果從列表編號爲奇數後,我要檢查,如果它是由3(數字模塊3分總是將0)
當我嘗試寫:
*Main>niepdodlist [1,2,3,6]
結果是
<interactive>:220:1:
No instance for (Integral a0) arising from a use of `niepdodlist'...
<interactive>:220:14:
No instance for (Num a0) arising from the literal `1'
The type variable `a0' is ambiguous...
結果應該是:
*Main>niepdodlist [3,6,3]
>9
解決方案(感謝@kqr)
nieplist n = odd n && mod n 3 == 0
niepdodlist xs = sum $ filter nieplist xs
非常感謝你我的朋友,這有助於;) 但你是正確的,這是6,如何對之數? 哦,不,我很愚蠢。對不起,沒關係。 我會在我的問題中編寫解決方案。 –