1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | bmiCalculator :: IO () bmiCalculator = do putStrLn "Please input your weight" weight <- readLn putStrLn "Please input your height" height <- readLn let bmi = weight / height^2 putStrLn $ case () of _ | bmi <= 17.5 -> "stuff goes here" | bmi <= 20.7 -> "..." | otherwise -> "..." {- a much better variant: extract bmi calculation into its own function -} showBmi :: Double -> Double -> String showBmi weight height | bmi <= 17.5 = "stuff goes here" | bmi <= 20.7 = "..." | otherwise = "..." where bmi = weight / height^2 bmiCalculator :: IO () bmiCalculator = do putStrLn "Please input your weight" weight <- readLn putStrLn "Please input your height" height <- readLn putStrLn $ showBmi weight height |
Ym1pQ2FsY3VsYXRvciA6OiBJTyAoKQpibWlDYWxjdWxhdG9yID0gZG8KICBwdXRTdHJMbiAiUGxlYXNlIGlucHV0IHlvdXIgd2VpZ2h0IgogIHdlaWdodCA8LSByZWFkTG4KICBwdXRTdHJMbiAiUGxlYXNlIGlucHV0IHlvdXIgaGVpZ2h0IgogIGhlaWdodCA8LSByZWFkTG4KICBsZXQgYm1pID0gd2VpZ2h0IC8gaGVpZ2h0XjIKICBwdXRTdHJMbiAkIGNhc2UgKCkgb2YKICAgIF8gfCBibWkgPD0gMTcuNSAtPiAic3R1ZmYgZ29lcyBoZXJlIgogICAgICB8IGJtaSA8PSAyMC43IC0+ICIuLi4iCiAgICAgIHwgb3RoZXJ3aXNlICAgLT4gIi4uLiIKCnstIGEgbXVjaCBiZXR0ZXIgdmFyaWFudDogZXh0cmFjdCBibWkgY2FsY3VsYXRpb24gaW50byBpdHMgb3duIGZ1bmN0aW9uIC19CnNob3dCbWkgOjogRG91YmxlIC0+IERvdWJsZSAtPiBTdHJpbmcKc2hvd0JtaSB3ZWlnaHQgaGVpZ2h0CiAgfCBibWkgPD0gMTcuNSA9ICJzdHVmZiBnb2VzIGhlcmUiCiAgfCBibWkgPD0gMjAuNyA9ICIuLi4iCiAgfCBvdGhlcndpc2UgICA9ICIuLi4iCiAgd2hlcmUgYm1pID0gd2VpZ2h0IC8gaGVpZ2h0XjIKCmJtaUNhbGN1bGF0b3IgOjogSU8gKCkKYm1pQ2FsY3VsYXRvciA9IGRvCiAgcHV0U3RyTG4gIlBsZWFzZSBpbnB1dCB5b3VyIHdlaWdodCIKICB3ZWlnaHQgPC0gcmVhZExuCiAgcHV0U3RyTG4gIlBsZWFzZSBpbnB1dCB5b3VyIGhlaWdodCIKICBoZWlnaHQgPC0gcmVhZExuCiAgcHV0U3RyTG4gJCBzaG93Qm1pIHdlaWdodCBoZWlnaHQK


