Re: [Haskell-cafe] swap a pair of integers

This was originally, and accidentally, sent to just Jenny, and not the list.
On 29/05/06, Jenny678
hello, i want swap a pair of integers for example Main> 17 out> 71 Can somebody help me?
When you want to do manipulation on the digits of a number like this, normally the easiest thing to do is to convert it to a string, use list manipulation functions, then convert back to an integer. For example: Prelude> (read . reverse . show) 17 71 -- -David House, dmhouse@gmail.com

David House wrote:
When you want to do manipulation on the digits of a number like this, normally the easiest thing to do is to convert it to a string, use list manipulation functions, then convert back to an integer.
For example:
Prelude> (read . reverse . show) 17 71
swapInteger :: Integer -> Integer swapInteger x = swapInteger' (x,0) swapInteger' :: (Integer,Integer) -> Integer swapInteger' (0,x) = x swapInteger' (remaining, result) = swapInteger' $ (remaining', result*10 + result') where (remaining', result') = remaining `divMod` 10 Works for all positive integer, and doesn't hassle around with converting it to a string.
participants (2)
-
David House
-
Tim Toorop