Haskell函数不起作用,我做错了什么?

Ore*_*ex0 0 haskell

嗨我想从列表中删除所有m的倍数(例如[2..100])

我的代码:

crossOut :: Int -> [Int] -> [Int]
crossOut n ns = [ x | x <- ns , x /= (n*x)]
Run Code Online (Sandbox Code Playgroud)

Ørj*_*sen 7

x /= (n*x)测试是否x是n时间本身,这是行不通的.试试吧x `mod` n /= 0.