| Richard 2004-08-26, 3:55 pm |
| riplin@Azonic.co.nz (Richard) wrote
> I have done systems that carry the rounding forward. That is when the
> first number is rounded the difference is added to the next number
> before that is rounded (or truncated, as preferred). This ensures
> that the total is always correct rather than being randomly incorrect
> by a small amount.
To clarify how this works (it does NOT do 'intermediate rounding')
here is an example.
Suppose we have a list of dollar.cent values, say branch sales totals,
that add up to a certain figure that is the total sales. The account
wants his report to be in thousands of dollars only. We could round
each branch total and the total sales separately, but then it might
not add up to the rounded total sales. We could round each and add
these to give a new total, but it might not be the same number as the
total sales.
Branch sales Rounded separately Rounded and added
1 5623.55 6 6
2 6700.22 7 7
3 1512.63 2 2
4 1622.00 2 2
------------------------------------------------
total 15458.40 15 17
The accountant won't like columns that don't add up, and also don't
like totals that are wrong.
By rounding each branch figure there is a rounding error. In the
example above this has been discarded so the difference between to 15
and the 17 is the accumulation of rounding errors (due to rather
contrived values).
To cater for these errors and arrive at the best (for the accountant)
report the error from one rounding is added to the next number before
that is rounded. The accumulated rounding error is then less than .5
for the column.
(view with a fixed font please)
Branch sales carry forward adjusted Rounded
5623.55 0.00 5623.55 6
6700.22 - 376.45 6323.77 6
1512.63 323.77 1836.40 2
1622.00 - 163.60 1458.40 1
458.40
-------- -----
15458.40 15
The column now adds up correctly and gives the correct total. The
accumulated rounding error for the column is exactly the rounding
error on the total.
For completeness you would store this away until the next month and
use it as the initial 'carry forward' so that at the end of the year
the 12 monthly reports totals will actually add up to the annual total
sales rounded figure.
|