|
MATLAB中format函数在控制输出格式中的使用方法如下:
format 默认格式
format short 5字长定点数
format long 15字长定点数
format short e 5字长浮点数
format long e 15字长浮点数
format short g
format long g
format hex 16进制
format bank 定点货币形式
format rat 小数分数表示
format + +,-,空格
format compact 压缩空格
format loose 包括空格和空行
format long 15字长定点数
format short e 5字长浮点数
format long e 15字长浮点数
format short g
format long g
format hex 16进制
format bank 定点货币形式
format rat 小数分数表示
format + +,-,空格
format compact 压缩空格
format loose 包括空格和空行
当然也可以不用format 命令,可以修改系统的默认设置格式,File->Preferences->Command Window->Text Display.
如果想得到分数可以用rats()函数
如果想得到根号,只有用符号表示了,当然用符号表示是万能的。例如:
a=1/3 得到 0.33333
rats(a) 得到 1/3
a='sqrt(3)' 得到 sqrt(3) 不过这是字符型,要转换成数值型可以用eval_r(a),或str2num(a).
另外,补充vpa ,digits的用法:
在符号计算中,通常计算结果使用有理数形式表示的,有的时候有理数分子分母很长,不便于观察,所以有时候希望能将系数表示成数值形式,此时就要用到这两个函数。
例子:s=(123*x^2)/29 + (892*x)87 + 212/29;
digits(4);(控制输出系数的位数)
s=vpa(s);
结果:
s =4.241*x^2+10.25*x+7.310
但是无论Matlab中采取什么样的输出格式,在系统内核中的变量的精度总是保持精确的(尽可能)。除非你人为的改变它的计算精度。我们可以用一个简单的例子来说明这个问题:如a=1/3 显示为0.33333333
a=a*3 得到 1 (不是0.99999999)
在很多其它的程序设计语言中是不可能得到1的。这就说明了Matlab在计算的过程中不会损失用户的计算信息(包括中间结果)。
Powered by Discuz! X2.5 © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 ) 论坛法律顾问:王兆丰
GMT+8, 2025-7-31 13:22 , Processed in 0.670236 second(s), 28 queries .