En aquest problema heu d’implementar una sèrie de funcions en Haskell. No cal que pregunteu si podeu fer servir funcions auxiliars, és evident que sí.
Feu una funció absValue :: Int -> Int que, donat
un enter, retorni el seu valor absolut.
Feu una funció power :: Int -> Int -> Int que,
donats un enter
i un natural
,
retorni
elevat a
,
és a dir,
.
Feu una funció isPrime :: Int -> Bool que, donat
un natural, indiqui si aquest és primer o no.
Feu una funció slowFib :: Int -> Int que retorni
l’-èsim
element de la sèrie de Fibonacci tot utilitzant l’algorisme recursiu que
la defineix
(,
,
per
).
Feu una funció quickFib :: Int -> Int que retorni
l’-èsim
element de la sèrie de Fibonacci tot utilitzant un algorisme més
eficient.
Cada funció puntua 20 punts.
Input
absValue (-666) power 2 3 isPrime 17 slowFib 5 quickFib 40
Output
666 8 True 5 102334155