Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何停止在Matlab中给零赋予非常小的值?_Matlab_Matrix_Rounding_Precision - Fatal编程技术网

如何停止在Matlab中给零赋予非常小的值?

如何停止在Matlab中给零赋予非常小的值?,matlab,matrix,rounding,precision,Matlab,Matrix,Rounding,Precision,假设我有一个矩阵M(3x3) 如果我输出M(1,1:2),它是 但是,如果我做M(1,1:3),前两列为零 不知道如何阻止这种情况发生。非常感谢你的帮助 您需要使用*G版本,该版本允许显示格式自适应,并使用最适合每个元素的格式。有两种变体 format shortG % 1.1574e-17 1.1574e-18 0.01 % 1.1574e-17 1.1574e-18 1 % 1.1574e-17 1.1574e-18

假设我有一个矩阵M(3x3)

如果我输出M(1,1:2),它是

但是,如果我做M(1,1:3),前两列为零


不知道如何阻止这种情况发生。非常感谢你的帮助

您需要使用
*G
版本,该版本允许显示格式自适应,并使用最适合每个元素的格式。有两种变体

format shortG

%   1.1574e-17   1.1574e-18         0.01
%   1.1574e-17   1.1574e-18            1
%   1.1574e-17   1.1574e-18          0.1


您需要使用
*G
版本,该版本允许显示格式是自适应的,并对每个元素使用最合适的格式。有两种变体

format shortG

%   1.1574e-17   1.1574e-18         0.01
%   1.1574e-17   1.1574e-18            1
%   1.1574e-17   1.1574e-18          0.1


格式长g
非常感谢!成功了!任何科学符号格式都可以。您也可以使用
format shortE
format long g
非常感谢!成功了!任何科学符号格式都可以。您也可以使用
格式缩写
ans =
   0.000000000000000   0.000000000000000   0.010000000000000
format shortG

%   1.1574e-17   1.1574e-18         0.01
%   1.1574e-17   1.1574e-18            1
%   1.1574e-17   1.1574e-18          0.1
format longG

%      1.15740740740741e-17      1.15740740740741e-18                      0.01
%      1.15740740740741e-17      1.15740740740741e-18                         1
%      1.15740740740741e-17      1.15740740740741e-18                       0.1