How to avoid rounding error

조회 수: 5 (최근 30일)
Jiapeng
Jiapeng 2022년 9월 17일
편집: Chris 2022년 9월 17일
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

채택된 답변

Chris
Chris 2022년 9월 17일
편집: Chris 2022년 9월 17일
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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by