楼主:
name0625 (lawpy)
2016-04-20 12:38:31碰到了个诡异的问题,想问问有没有人知道是哪里出问题...
>>single(411905856)
ans =
411905856
>>single(411905856)+100
ans =
411905952
>>single(411905856)+single(100)
ans =
411905952
确认过Workspace里面没有single名称的变量
也确认过没有非内建的single.m档案
目前是改回double计算,但想知道是什么原因
我找好久找不到为什么
有没有大大能够开释一下?
楼主:
name0625 (lawpy)
2016-04-20 12:39:00版本:2016a
楼主:
name0625 (lawpy)
2016-04-20 12:47:00是因为只有23bit的有效数位吗?所以超过2^23的数字都不准的意思吗?
作者:
sunev (Veritas)
2016-04-20 12:48:00这是内建指令,一些低阶的内建指令不一定有m档像plot也没有m档
楼主:
name0625 (lawpy)
2016-04-20 12:54:00sun大 我是说确认过不是我弄了个single.m导致出错ˊˋ
是浮点数的有效位数significant digits你google一下都有相关的讯息,我非资讯出身无法详细解释
作者:
sunev (Veritas)
2016-04-20 13:01:00直接打"help 指令" 就可以知道是不是内建指令,这是最直接的方法。不小心将变量指令拿来当变量名称用,也常常是诡异bug的原因。像是alpha beta gamma其实都是内建指令。
楼主:
name0625 (lawpy)
2016-04-20 13:04:00好喔,大概了解了,谢谢两位
作者:
clang (llvm)
2016-04-24 22:18:00浮点数有效位数问题