Это мой код до сих пор:Что я делаю неправильно в реализации этой рекурсивной функции?
test n p
|p > n = 0
|p == n = 1
|otherwise = sum [test n-p q|q<-[1..p+1]]
Это должно реализовать простую рекурсивную функцию (принимающие неотрицательные целые числа)
Однако я получаю сообщение об ошибке, что я не понимаю. (Я не смог скопировать его с консоли ghci, поэтому я просто набрал ее) Может ли кто-нибудь сказать мне, что здесь не так?
Expected a constraint, but 'Int' has kind '*'
In the type signature for 'test': test :: Int -> Int => Int
Почему downvote ?? – flawr
Ваша подпись типа неправильная, но вы не включили ее в вопрос. Тип 'test' должен быть' Int -> Int -> Int' –
Кроме того, вам нужны скобки вокруг 'n-p' –