RosettaCodeData/Task/Loops-While/Haskell/loops-while-3.hs
2023-07-01 13:44:08 -04:00

11 lines
245 B
Haskell

{-# LANGUAGE MonadComprehensions #-}
import Data.IORef
import Control.Monad.Loops
main :: IO ()
main = do
r <- newIORef 1024
whileM_ [n > 0 | n <- readIORef r] $ do
n <- readIORef r
print n
modifyIORef r (`div` 2)