gpt4 book ai didi

.net - 如何根据数字的大小对其进行舍入(使用 .Net)

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:02:53 24 4
gpt4 key购买 nike

我需要根据数字的大小动态限制数字的精度。我的意思是,如果我有 8903.234,我希望它没有小数 (8903),如果我有 849342.23,我希望它以 2 个零结尾 (849300),或者如果我想要 6.589654,我希望它四舍五入为 3 位小数 (6.589)。

有人知道如何实现这个吗? (比例尚未确定,但将是线性的)

编辑:为了写得更好,数字越大,我想要的精度就越低。

最佳答案

我认为我们正在谈论“有效数字”。您可以使用 Math.log(number) 来获取数字的小数位数,然后简单地减去要保留的有效数字,除法、舍入、乘法、利润!

  double multiplier = Math.Pow(10, (Math.Floor(Math.Log10(value)) + 1 - digitCount));
double roundedValue = multiplier * Math.Round(value / multiplier);

您可能还需要处理浮点精度错误。

关于.net - 如何根据数字的大小对其进行舍入(使用 .Net),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8030857/

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