使用tic和toc来运行命令(而不是测量代码的效率),我发现tic和toc似乎有点不可靠。我是一个非常新的用户,所以我认为我缺少matlab的基本功能,如果有人能告诉我为什么会发生这种情况,我将不胜感激。我在网上和教科书中搜索了这个问题的答案,但我发现没有任何与我的具体问题相关的内容。
我现在没有任何代码可以解决这个问题,但我会提供一个小例子:
tic
while 1
t=toc
if t==.5
run code
break
end
end
永远不会触发if语句。
但是会触发这样的事情。
tic
while 1
t=toc;
if t>=.5 && t<.55
run code
break
end
end
在第一个代码示例中,如果我不抑制t = toc,我可以看到在某些时候t确实等于.5但是if语句没有被触发。这是为什么?
编辑:这是一个资源,它解释了初学者的浮点数,并帮助我理解了这个问题。 http://floating-point-gui.de/