Hello. Could somebody please inform me how to Round numbers to a
certain Accuracy using Mathematica 4.2. This is not as easy as it
sounds.
Every function that I have read Rounds the Display, and not the actual
number.
For example, I am trying to round numbers to 5 digits to the right of
the decimal place. The programming environment VBA has a "Round"
function that does this (ROUND(1/7,5)), but Mathematica "Round" rounds to an
Integer, so that is no good.
Using "N" does not work for rounding a number, it only affects the
display
x = N[1./3 + 2./7, 5]
0.619048
I wanted 5, but it prints with "PrintPrecission" of 6.
FullForm[x*5]
FullForm[3.0952380952380953]
As you can see, x was not rounded to 5 digits internally.
It's even worse for exact numbers. Help talks about displaying Pi to 40
(I use 20 here). However, it does not mention the problem when it is
less than 16.
N[Pi, 20]
3.141592653589793238462643383255068`20
x = N[Pi, 4]
3.14159 (Note 6 digits and not 4 as asked)
FullForm[x*2]
FullForm[6.283185307179586]
However, it does not matter, as x was not rounded anyway.
An article mentioned using "NumberForm," but that only affects the
display, and not the number.
All the examples like NumberForm, ScientificForm, etc all affect the
"Printing" of the number, not the number itself.
Another option I thought of was
a = SetAccuracy[1/3, 5]
0.3333333333333333333`4.5229
FullForm[a]
FullForm[0.3333333333333333333`4.5229]
All I want is a=0.33333
Thank you for any insight.
--
Dana DeLouis
Windows XP
$VersionNumber -> 4.2
= = = = = = = = = = = = = = = = =