假设我们有一组十进制值,我们希望计算每个值的总百分比:
decimal [] values = {20.50, 40.25, 70.10, 35.80}; // etc
我们还有这些值的总和:
decimal sum = 166.65;
现在,我希望每个values
百分比表示,但总的来说,百分数之和(int)总是等于100应该是。
现在我使用这样的公式来计算百分比值:
int percent = (int)(Math.Round(values[0] * 100.0m / sum));
但是,根据输入值 - 由于四舍五入,所有输入值的计算百分比的总和有时为99或101.
使用哪种公式来获得最准确的百分比分布结果?