Please note, this is a STATIC archive of website www.tutorialspoint.com from 11 May 2019, cach3.com does not collect or store any user information, there is no "phishing" involved.
Tutorialspoint

lab1

{- Lab 1
   Authors: Pouya Faramarzi
   Lab group:
 -}
---------------------------------------------
power :: Integer -> Integer -> Integer
power n k
                | k < 0 = error "power: negative argument"
power n 0   =   1
power n k   =   n * power n (k-1)

-- A -------------------------
-- stepsPower n k gives the number of steps that
-- power n k takes to compute

stepsPower :: Integer -> Integer -> Integer
stepsPower n k = (k + 1)


-- B -------------------------
-- power1
power1 :: Integer -> Integer -> Integer
power1 n k     
                | k < 0 = error "power: negative argument"
power1 n 0      = 1
power1 n k      = product [n | n <- [n..k]]
                

{-
let powerList = []
power1 n k 
                | k < 0 = error "power: negative argument"
power1 n 0  =   1 : powerList
                product powerList
power1 n k  =
                n : powerList
                power1 n (k-1)
-}

-- C -------------------------
-- power2

--power2 = undefined

-- D -------------------------
{- 

<Describe your test cases here>

 -}

-- comparePower1
--comparePower1 = undefined

-- comparePower2
--comparePower2 = undefined

-- Test functions: 

Advertisements
Loading...

We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy.