2013-09-14 回答
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(a),或str...要转换成数值型可以用eval(a),在系统内核中的变量的精度总是保持精确的(尽可能),可以修改系统的默认设置格式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 + +;preferences->command window->.
但是无论matlab中采取什么样的输出格式.33333333
a=a*3 得到 1 (不是0;text display.
如果想得到分数可以用rats()函数
如果想得到根号;sqrt(3)'3
a=',-。
可以用一个简单的例子来说明这个问题,当然用符号表示是万能的。
例如。
除非人为的改变它的计算精度:
a=1/3 显示为0;3 得到 0,空格
format compact 压缩空格
format loose 包括空格和空行
当然也可以不用format 命令; 得到 sqrt(3) 不过这是字符型,或str2num(a):如a=1/,-,file->.33333
rats(a) 得到 1/,只有用符号表示了,空格
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 + +