Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module Terminal where
- type Symbols = [String]
- en2ni :: Symbols -> Int
- en2ni [] = 0
- where en2ni (terminal : rest)
- |(terminal == "en") = 1 + mer rest
- |(terminal == "et") = 1 + mer rest
- |(terminal == "to") = 2 + mer rest
- |(terminal == "tre") = 3 + mer rest
- |(terminal == "fire") = 4 + mer rest
- |(terminal == "fem") = 5 + mer rest
- |(terminal == "seks") = 6 + mer rest
- |(terminal == "syv") = 7 + mer rest
- |(terminal == "otte") = 8 + mer rest
- |(terminal == "ni") = 9 + mer rest
- |otherwise = ti2nitten (terminal:rest)
- ti2nitten :: Symbols -> Int
- ti2nitten [] = 0
- where ti2nitten (terminal : rest)
- |(terminal == "ti") = 10
- |(terminal == "ellve") = 11
- |(terminal == "tolv") = 12
- |(terminal == "tretten") = 13
- |(terminal == "fjorten") = 14
- |(terminal == "femten") = 15
- |(terminal == "seksten") = 16
- |(terminal == "sytten") = 17
- |(terminal == "atten") = 18
- |(terminal == "nitten") = 19
- |otherwise = tyve2halvfems (terminal:rest)
- mer :: Symbols -> Int
- mer [] = 0
- where ti2nitten (terminal : rest)
- |(terminal == "og") = tyve2halvfems rest
- tyve2halvfems :: Symbols -> Int
- tyve2halvfems [] = 0
- where tyve2halvfems (terminal : rest)
- |(terminal == "tyve") = 20
- |(terminal == "tredvie") = 30
- |(terminal == "fyrre") = 40
- |(terminal == "fyrretyve") = 40
- |otherwise = halvtreds2halvfems (terminal:rest)
- halvtreds2halvfems :: Symbols -> Int
- halvtreds2halvfems [] = 0
- where halvtreds2halvfems (terminal : rest)
- |(terminal == "halv") = -10
- |otherwise = mult (terminal:rest)
- mult :: Symbols -> Int
- mult [] = 0
- where mult (terminal : rest)
- |(terminal == "tres") = 60
- |(terminal == "firs") = 80
- |(terminal == "fjerds") = 80
- |(terminal == "fems") = 100
Add Comment
Please, Sign In to add comment