注册地址 登录
数学建模社区-数学中国 返回首页

woshi李小生的个人空间 http://www.madio.net/?1436877 [收藏] [复制] [分享] [RSS]

日志

MATLAB中format函数在控制输出格式中的使用方法

已有 401 次阅读2015-8-11 15:02 |个人分类:matlab

MATLABformat函数在控制输出格式中的使用方法如下:

 


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在计算的过程中不会损失用户的计算信息(包括中间结果)。


路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

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 .

回顶部