How to avoid rounding error

3 views (last 30 days)
Jiapeng
Jiapeng on 17 Sep 2022
Edited: Chris on 17 Sep 2022
If I want to get the value of sqrt(10001),and it should to be 100.00499...
However, MATLAB shows 100.005.
How should I write the code to get 100.00499...
THANK YOU

Accepted Answer

Chris
Chris on 17 Sep 2022
Edited: Chris on 17 Sep 2022
Matlab is simply truncating the displayed value for ease of reading.
format longG
sqrt(10001)
ans =
100.004999875006
In both cases, the actual value matlab holds in memory is within +/- epsilon of the true value. Epsilon can be calculated like so:
eps(sqrt(10001))
ans =
1.4210854715202e-14

More Answers (0)

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!