gpt4 book ai didi

C# 舍入 MidpointRounding.ToEven 与 MidpointRounding.AwayFromZero

转载 作者:可可西里 更新时间:2023-11-01 03:13:34 26 4
gpt4 key购买 nike

在C#中,MidpointRounding.ToEvenMidpointRounding.AwayFromZero这两种小数舍入策略在精度上有区别吗?我的意思是两者都确保在四舍五入的数字之间均匀分布,还是一种舍入策略比另一种表示舍入的数字更重要?

最佳答案

来自 Math.Round 的 .NET 文档页面:

https://learn.microsoft.com/en-us/dotnet/api/system.math.round#midpoint-values-and-rounding-conventions

默认情况下,Math.Round 使用 MidpointRounding.ToEven。大多数人不熟悉“四舍五入”作为替代方法,“从零开始四舍五入”在学校更常见。 .NET 默认为“四舍五入为偶数”,因为它在统计上更胜一筹,因为它不具有“从零开始四舍五入”的趋势,即四舍五入的频率略高于四舍五入的频率(假设四舍五入的数字往往是正数。 )

根据数据集,对称算术舍入可能会引入主要偏差,因为它总是向上舍入中点值。举一个简单的例子,假设我们想要确定三个值的平均值,1.5、2.5 和 3.5,但是我们想在计算它们的平均值之前先将它们四舍五入到最接近的整数。请注意,这些值的真实平均值是 2.5。使用对称算术舍入,这些值变为 2、3 和 4,它们的平均值为 3。使用银行家舍入,这些值变为 2、2 和 4,它们的平均值为 2.67。由于后一种舍入方法更接近三个值的真实平均值,因此它提供的数据损失最少。

关于C# 舍入 MidpointRounding.ToEven 与 MidpointRounding.AwayFromZero,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7360432/

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