16 lines
385 B
Haskell
16 lines
385 B
Haskell
module Utils (askNumber) where
|
|
|
|
import Text.Read (readMaybe)
|
|
import System.Exit (exitSuccess)
|
|
|
|
-- Ask user for an integer > 1, or exit on invalid input
|
|
askNumber :: String -> IO Integer
|
|
askNumber s = do
|
|
putStrLn s
|
|
input <- getLine
|
|
case readMaybe input of
|
|
Just n | n > 1 -> return n
|
|
_ -> do
|
|
putStrLn "Not a valid integer"
|
|
exitSuccess
|