猿问

越来越具体的十进制数的计算影响是什么

我正在编写一个数学函数来提供立方体的体积,以获得每平方英寸重量(存储为常量双精度)的物体的总重量,0.28361111111111109这显然是一个非常具体和精确的数字。


回到问题上来,用这个数字计算方程是否比类似的四舍五入版本更难,0.28461或者计算机处理计算的方式基本上没有区别?


精度是理想的,但不能以牺牲性能为代价。


这对我来说更具体地适用于 .NET 框架,但它可能更普遍地适用于编程。


对于它特别值得的代码是:


public var Weight

{

    get

    {

        double weight_per_square_inch = 0.28361111111111109;


        double volume = this.Length * this.Thickness * this.Width;


        return (volume * weight_per_square_inch) * this.Quantity;

    }

}


心有法竹
浏览 131回答 2
2回答

DIEA

如果您提高精度,双精度数不会变慢,但可能无法正确保持小数点后 17 位。您需要查看其他类型,例如Decimal,它速度较慢但支持您需要的高精度。

万千封印

如果您需要精度,那么您可以更改类型Decimal。当我们在应用程序中计算数百万个项目时,我发现数字有很大差异。当您进行大量计算时,小数值确实会产生影响。但是,如果您需要性能,那么double将是最合适的。您可以根据您的业务需求决定选择哪种类型。
随时随地看视频慕课网APP
我要回答