最近编写程序,要求随机生成两个小于2^32的数x,y;然后用x*y去摩2^32,判断结果是否小于100000.我用的判断语句为
[align=center]if mod(x*y,2^32)<100000
isright=TRUE;
else
isright=FALSE;
end[/align]
结果又一次生成的两个数分别为:
x=3537755020;
y=3875047216;
matlab计算出的结果为0,结论isright=TRUE;
但我用计算器计算得出的结果为4294966848,结论isright=FALSE;
我应该怎样避免matlab出现的精度问题呢?
------解决方案--------------------------------------------------------
为什么没人回答?
没有人在乎过matlb的精度问题吗?
------解决方案--------------------------------------------------------
我在乎,但我不会啊