Weird problem with fix.

2 次查看(过去 30 天)
MSP
MSP 2017-7-22
Guys do you know why fix on matlab 2017a is behaving weirdly. Pls have a look on the attached pic.This is not photoshopped.

回答(2 个)

Matt J
Matt J 2017-7-22
编辑:Matt J 2017-7-22
Because out(1,3) is only displayed to four decimal places, it is possible that it's value is actually 3.99999999999999999 or something like that. Because it's value is slightly less than 4, fix() returns 3 for that entry.

Star Strider
Star Strider 2017-7-22
编辑:Star Strider 2017-7-22
The format displays the value rounded to the nearest integer. The fix function rounds toward zero (for both positive and negative numbers).
Example
format long g
R1C2 = 3.9999999999
format short g
Q1 = R1C2
Q2 = fix(R1C2)
R1C2 =
3.9999999999
Q1 =
4
Q2 =
3
————————————————————
EDIT Clarified explanation.

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by