matlab计算高精度小数?

问题描述:

matlab计算高精度小数?
打好字百度不让发,具体问题见图:


1个回答 分类:综合 2014-10-17

问题解答:

我来补答
事实上MATLAB的计算精度远不止你说的15位,只是结果一般以精简的形式表示.要提高结果得显示精度,有两个方法:
1,用vpa函数,这个函数并不是简单地提高运算结果得显示精度,而是在整个计算过程中以你要求的精度进行计算.如以40位浮点数运算:
>>1-vpa(1.234e-25,40)
ans =
实际精确结果不到40位小数,故以世界结果显示.
2,用精确的符号计算
>> 1-sym(1.234e-25)
ans =
43556142965880123323311944376438289076761/43556142965880123323311949751266331066368
用一个分数表示,计算过程中没有舍入误差.
>> vpa(1-sym(1.234e-25),40)
ans =
ans结果已省略,百度不让发.
 
 
展开全文阅读
剩余:2000