Files
recipe-cost/cout-recette.hs

35 lines
1.1 KiB
Haskell
Raw Normal View History

2016-05-21 01:07:35 +02:00
#! /usr/bin/env runhaskell
type Ingredient = (String, Double, Double)
type Recette = ( String, [Ingredient], Double, Double)
ingredientsLessive :: [Ingredient]
ingredientsLessive = ( "Lessive"
, [ ("Eau", 0.003, 2.5)
, ("Savon de Marseille", 3.36, 0.1)
, ("Bicarbonate de soude", 3.81, 0.016)
, ("Vinaigre blanc", 0.36, 0.03)
]
, 2.5
, 30
)
quantiteLessive = 2.5
nombreUtilisations = 30
prixTotal ingredientsLessive = sum . map (\ (_, x, y) -> x * y) $ ingredientsLessive
prixLitre prixTotal quantiteLessive = prixTotal / quantiteLessive
prixUtilisation prixTotal quantiteLessive = prixTotal / nombreUtilisations
main = do
putStrLn "Calcul du coût des recettes\n"
putStrLn "* Lessive :"
print ingredientsLessive
putStrLn $ " * Prix Total = " ++ show prixTotal ++ ""
putStrLn $ " * Prix au litre = " ++ show prixLitre ++ ""
putStrLn $ " * Prix par utilisation = " ++ show prixUtilisation ++ ""