标签: haskell tuples
我需要一点帮助。
输入:(双精度,字符串)元组
输出: -在新行中,字符串+“:” +“” +实数增加了15%,最后在新行“ Done”中
示例:
myPutStr [(210.0,“ Converse”),(315.0,“ Crocs”),(250.0,“ Lacoste”),(275.5,“ Under Armour”))]
输出:
匡威:241.0
鳄鱼:362.0
拉科斯特:287.0
装甲:316.825
完成
答案 0 :(得分:-1)
您可以使用mapM_ / traverse_或翻转参数版本:forM_ / for_来实现它。我更喜欢for_,因为它看起来更像Java语言中的“增强的循环”。
mapM_
traverse_
forM_
for_
import Data.Foldable (for_) myPutStr :: [(Double,String)] -> IO () myPutStr vals = do for_ vals $ \(num, str) -> do putStr str putStr ": " print (num * 1.15) -- increase num by 15% putStrLn "Done"