Какая точность должна быть, чтобы избежать погрешности при пересчёте? Всем привет. Есть задача. Есть полная сумма - Sum. Sum = amount[0] + amount[1] + ... + amount[n] Все данные amount[i] (точность до двух знаков), перевели в проценты: percent[i] = amount[i] * 100 / Sum. Получаю список данных, в которых хранятся эти проценты, с точностью до двух знаков: 5.26, 5.26 и т.п. На основе этих данных вычисляется кол-во для каждого процента (т.е. обратный пересчёт): amount[i] = (Sum * percent[i]) / 100 Какая точность должна быть в процентных данных, чтобы получать корректные количественные данные (при обратном пересчёте), с округлением до двух знаков? Мне кажется должна быть какая-нить теоремка или док-во по этому поводу. Заранее благодарен.
Для избежания погрешности при обратном пересчёте необходимо, чтобы сумма всех процентов была равна 100%. То есть сумма всех percent[i] должна быть равна 100. При этом, чтобы избежать округлений и погрешностей, рекомендуется хранить проценты с большей точностью. Например, можно хранить проценты с точностью до 4 знаков (например, 5.2638%), чтобы после обратного пересчёта и округления до двух знаков получить корректные количественные значения.
Таким образом, для получения корректных данных при обратном пересчете, рекомендуется хранить проценты с точностью до 4 знаков, чтобы избежать погрешностей при округлении.
Для избежания погрешности при обратном пересчёте необходимо, чтобы сумма всех процентов была равна 100%. То есть сумма всех percent[i] должна быть равна 100. При этом, чтобы избежать округлений и погрешностей, рекомендуется хранить проценты с большей точностью. Например, можно хранить проценты с точностью до 4 знаков (например, 5.2638%), чтобы после обратного пересчёта и округления до двух знаков получить корректные количественные значения.
Таким образом, для получения корректных данных при обратном пересчете, рекомендуется хранить проценты с точностью до 4 знаков, чтобы избежать погрешностей при округлении.