-- Haskell-Einführung -- Parall. in fkt. Spr. -- -- Hauptprogramm mit Import von "Types.hs" -- ShowPrime.hs ------------------------------------------ -- Aufgabe: -- nimm eine ganze Zahl n als Parameter von der Kommandozeile (falls vorhanden, -- sonst frage den Benutzer nach einer Zahl n ) und gib die n-te Primzahl aus. import System( getArgs ) -- reduzierter Import import Types( primes ) -- wird vom GHC ab 5.00 automatisch gefunden (mit Option "--make") -- mit GHC 3.02 einzeln übersetzen (Option "-C") und danach linken -- /app/lang/functional/ghc-* enthält verschiedene Versionen des Glasgow Haskell Compilers main :: IO () main = do args <- getArgs if (length args == 0) then do n <- lesen gibAus n else let n = read (args!!0)::Int in gibAus n gibAus :: Int -> IO () gibAus n = putStrLn ("Primzahl Nr. " ++ show n ++ " ist "++ show prime) where prime = primes!!(n-1) -- Liste beginnt bei Index 0 lesen :: IO Int lesen = do putStr "Bitte ganze Zahl eingeben: " x <- getLine return (read x :: Int)