I'm puzzled by the output I get from SetAccuracy
. According to the documentation, when SetAccuracy
is used to increase the accuracy of a number, the number is padded with zeros. But, let's take a look at a couple of examples:
SetAccuracy[1.2, 5]
(* 1.2000 *)
SetAccuracy[1., 5]
(* 1.0000 *)
SetAccuracy[0.2, 5]
(* 0.2000 *)
These examples seem to work properly, so why does it behave differently in this case?
SetAccuracy[0., 5]
(* 0.*10^-5 *)
What should I do to get a zero with four trailing zeros?
Update I'm asking this question, because I need to export data to a txt file and I would like to avoid having 0.*10^-5
sort of numbers.
Answer
The comments by image_doctor led me to the answer I was looking for:
StandardForm@NumberForm[1.2, {20, 4}, ExponentFunction -> (Null &)]
(* 1.2000 *)
StandardForm@NumberForm[1., {20, 4}, ExponentFunction -> (Null &)]
(* 1.0000 *)
StandardForm@NumberForm[0.2, {20, 4}, ExponentFunction -> (Null &)]
(* 0.2000 *)
StandardForm@NumberForm[0., {20, 4}, ExponentFunction -> (Null &)]
(* 0.0000 *)
The data are then consistent and can be easily exported.
Comments
Post a Comment