factorial :: Int -> Int
factorial 0 = 1
factorial n
| n < 0 == error "Cant call a nagative number"
| otherwise = n * factorial (n-1)
Run Code Online (Sandbox Code Playgroud)
谁能解释为什么我收到这个错误?
haskell.hs:77:2: parse error on input ‘|’
Run Code Online (Sandbox Code Playgroud)
你需要使用=未==在函数定义:
factorial :: Int -> Int
factorial 0 = 1
factorial n
| n < 0 = error "Cant call a nagative number"
| otherwise = n * factorial (n-1)
Run Code Online (Sandbox Code Playgroud)
= 是一个用于定义事物的句法原子;== 是用于比较值的函数/运算符.