Appendix. Answers to end-of-lesson exercises

The beautiful thing about code is that there are no wrong answers as long as you get the right results. The answers to the exercises shown here should be viewed as simply one possible solution to the problem. Especially in Haskell, there are many paths to the correct solution; if you have an alternative answer that gives the correct results, that’s the correct solution.

Unit 1

Lesson 2

Q2.1

inc x = x + 1
double x = x*2
square x = x^2

Q2.2

ex3 n = if n 'mod' 2 == 0
        then n - 2
        else 3*n+1

Q2.3

ifEven n = if even n
           then n - 2
           else 3 * n + 1

Lesson 3

Q3.1

simple = (\x -> x)
makeChange = (\owed given ->
               if given - owed > 0
               then given - owed
               else 0)

Q3.2

inc = (\x -> ...

Get Get Programming with Haskell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.