Hello

Does you find this version easier to understand?

rangeProduct :: Int -> Int -> Int
rangeProduct m n = if m > n then 0
                            else if m == n then m
                                           else m * rangeProduct (m+1) n



I would suspect the main point of the example is to make you think
recursively - note how rangeProduct is called from within its own
definition (on the last line of code).

Before it, there are two stopping conditions that will halt recursion
"if m > n " or "if m == n" - stopping conditions are crucial for
recursive thinking and programming - without them you will recur
endlessly and never produce an answer.

If you exam is 'on paper' - that's to say code you can have some
syntax errors because it isn't actually run - you want to be
demonstrating that you can think recursively.


Good luck

Stephen
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to