> Thanks Peter, that is very detailed. In my case, I have to deal with amounts
> that are always doubles with two decimals. Since I need to add these
> numbers, but only after transforming them to integers, I do not have to
> implement my own rounding routine. I need however to prevent the
> introduction of rounding errors...

So you know you must sum the amounts using the  Kahan Summation Formula,
don't you? ;)

The worst thing you can do is to round at every step of your
iteration, round the grand total..

>
>
> -----Original Message-----
> From: Discussion of advanced .NET topics.
> [mailto:[EMAIL PROTECTED] Behalf Of Peter Vertes
> Sent: Monday, August 25, 2008 12:59 PM
> To: ADVANCED-DOTNET@DISCUSS.DEVELOP.COM
> Subject: Re: [ADVANCED-DOTNET] Converting doubles into integers without
> rounding errors
>
>
> If you are ready to make your head spin take a look at these pages:
>
> http://en.wikipedia.org/wiki/Bankers_rounding
> http://support.microsoft.com/kb/196652
> http://blogs.msdn.com/ericlippert/archive/2003/09/26/53107.aspx
>
> -Pete
>
> On Mon, Aug 25, 2008 at 12:51 PM, Curt Hagenlocher
> <[EMAIL PROTECTED]>wrote:
>
>> On Mon, Aug 25, 2008 at 9:48 AM, Peter Ritchie
>> <[EMAIL PROTECTED]> wrote:
>> >
>> > I would recommend something like this:
>> >
>> > double tempAmount = objMyObject.Amount * 100.0;
>> > uint nIntAmount = Math.Round(tempAmount);
>>
>> Ah, *that*'s where the rounding function is hiding.
>>
>> Or you could just use "Math.Round(amount, 2)" to round to the second
>> decimal place.
>>
>> --
>> Curt Hagenlocher
>> [EMAIL PROTECTED]
>>
>> ===================================
>> This list is hosted by DevelopMentor(R)  http://www.develop.com
>>
>> View archives and manage your subscription(s) at
>> http://discuss.develop.com
>>
>
> ===================================
> This list is hosted by DevelopMentor(R)  http://www.develop.com
>
> View archives and manage your subscription(s) at http://discuss.develop.com
>
> ===================================
> This list is hosted by DevelopMentor(R)  http://www.develop.com
>
> View archives and manage your subscription(s) at http://discuss.develop.com
>

===================================
This list is hosted by DevelopMentorĀ®  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to