|
|
Rounding (up/down) to a certain number of decimal places
Hello Group
How do I round say 1.23 up/down to 2 decimal places? I am currently
(ab)using [format].
Thanks
Evilson
|
|
0
|
|
|
|
Reply
|
Evil
|
10/16/2010 8:45:41 AM |
|
Evil Son <ewilsonmail@gmail.com> writes:
> How do I round say 1.23 up/down to 2 decimal places? I am currently
> (ab)using [format].
Sounds like the right choice.
--
Donald Arseneau asnd@triumf.ca
|
|
0
|
|
|
|
Reply
|
Donald
|
10/16/2010 10:24:21 AM
|
|
On 16 Pa=C5=BA, 10:45, Evil Son <ewilsonm...@gmail.com> wrote:
> Hello Group
>
> How do I round say 1.23 up/down to 2 decimal places? I am currently
> (ab)using [format].
Using [format] is completly correct way, but if you prefer to avoid it
for some reason, there is other way:
set precision 2
set roundedValue [expr { double(round($value * pow(10,$precision))) /
pow(10,$precision) }]
Regards,
Googie
|
|
0
|
|
|
|
Reply
|
pawelsalawa (93)
|
10/16/2010 2:08:44 PM
|
|
On Oct 17, 12:08=C2=A0am, Googie <pawelsal...@gmail.com> wrote:
> On 16 Pa=C5=BA, 10:45, Evil Son <ewilsonm...@gmail.com> wrote:
>
> > Hello Group
>
> > How do I round say 1.23 up/down to 2 decimal places? I am currently
> > (ab)using [format].
>
> Using [format] is completly correct way, but if you prefer to avoid it
> for some reason, there is other way:
>
> set precision 2
> set roundedValue [expr { double(round($value * pow(10,$precision))) /
> pow(10,$precision) }]
>
> Regards,
> Googie
Thanks Donald and Googie ... least of all for figuring out what I
meant. My example should have been 1.234 :P
Yes [format] works fine on my machine but I was just wondering about
whether it would behave the same on other machines and whether that
was the correct way to do it. Sounds like it is. (IIRC, C's <stdio.h>
printf's behaviour is undefined here. But this is Tcl of course ...
and my C is rusty.)
Thanks again.
Evilson
|
|
0
|
|
|
|
Reply
|
ewilsonmail (97)
|
10/16/2010 4:10:40 PM
|
|
|
3 Replies
739 Views
(page loaded in 0.165 seconds)
|
|
|
|
|
|
|
|
|