24小时热门版块排行榜    

查看: 1353  |  回复: 7

daxia1997

木虫 (著名写手)

[交流] 关于matlab的一个诡异问题 已有5人参与

比较两个一维数组,在变量中观察,其数值是一样的。可是用逻辑运算符进行==比较,发现有的值为零,即不相等。再在Ediors区对数组中不相等位置双击一下,然后在用==比较,则这两位相等了。????????匪夷所思中。。。。。。。。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangyuewu08

木虫 (著名写手)


小木虫(金币+0.5):给个红包,谢谢回帖
把代码贴出来看看
往事并不如烟
2楼2011-12-16 21:09:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

likeac

至尊木虫 (职业作家)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
臭水沟(金币+2): 谢谢交流~~ 2011-12-17 18:21:26
你看到的只是有限的小数点几位。

这就是digital和模拟的差别。

模拟转化成数字后,有误差的。

你看到的相同的数字,有些情况下并不相同。

也就说计算机表示数字有精度问题。
红日初升,其道大光;河出伏流,一泻汪洋;潜龙腾渊,鳞爪飞扬;乳虎啸谷,百兽震惶;鹰隼试翼,风尘吸张;奇花初胎,矞矞皇皇;干将发硎,有作其芒;天戴其苍.
3楼2011-12-17 08:31:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

daxia1997

木虫 (著名写手)

引用回帖:
: Originally posted by likeac at 2011-12-17 08:31:39:
你看到的只是有限的小数点几位。

这就是digital和模拟的差别。

模拟转化成数字后,有误差的。

你看到的相同的数字,有些情况下并不相同。

也就说计算机表示数字有精度问题。

可是 只用了一个双击的过程,就相等了,这和精度无关。没有改变任何数值的过程。
4楼2011-12-17 15:46:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lawyer1793polo

银虫 (著名写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
xiegangmai(金币+1): 谢谢参与! 2011-12-18 21:36:12
我也碰过类似的问题。如3楼所说,你看到的两个量相同,可能由于显示的数字位数还不够多。实际上这两个量有可能在最后几位有微小差别,但比eps也大不了多少。
我个人理解,在Editor中取的数也许截断了一部分。
5楼2011-12-18 10:44:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

daxia1997

木虫 (著名写手)

得到大家的回复,基本上认为是数据显示的问题。可是对于相差这么小的数据,做了FFT后,一组都为NaN,另一组确可以正确计算,这能说通吗?有点想不明白了。
6楼2011-12-18 12:22:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yujia5038

铁杆木虫 (小有名气)


小木虫(金币+0.5):给个红包,谢谢回帖
实数是否相等的判断不能直接采用是否相等----这是程序设计中最基础的知识,无论使用哪种语言。
7楼2011-12-18 12:24:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yuanmd

至尊木虫 (知名作家)

衔头义定自

精度问题。。。
梦想总是要有的,万一实现了呢?
8楼2011-12-18 12:28:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 daxia1997 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见