gpt4 book ai didi

haskell - 在 Haskell 中过度使用 fromIntegral

转载 作者:行者123 更新时间:2023-12-03 10:12:31 24 4
gpt4 key购买 nike

每当我使用 double 和整数编写函数时,我都会发现这个问题,我经常不得不在函数的任何地方使用“fromIntegral”。例如:

import Data.List

roundDouble
:: Double
-> Int
-> Double
roundDouble x acc = fromIntegral (round $ x * 10 ** fromIntegral acc) / 10 ** fromIntegral acc

有没有更简单的方法来写这个? (我知道可能有更简单的方法来四舍五入,如果有请告诉我!但是我主要对如何避免使用这么多“fromIntegrals”感兴趣。)

谢谢,阿什

最佳答案

有时我发现辅助函数很有用:

roundDouble x acc = (round $ x * 10 ^ acc) /. (10 ^ acc)
where
x /. y = fromIntegral x / fromIntegral y

该辅助函数也可以写成:
(/.) = (/) `on` fromIntegral

在哪里 on来自 Data.Function .

关于haskell - 在 Haskell 中过度使用 fromIntegral,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3453608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com