怎样使matlab不四舍五入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样使matlab不四舍五入相关的知识,希望对你有一定的参考价值。

参考技术A x = [-1.9, -0.2, 3.4, 5.6];
ceil(x) % 朝正无穷方向取整,超过x的最小整数
floor(x) % 朝负无穷方向取整,不超过x的最大整数
round(x) % 四舍五入取整
fix(x) % 向坐标原点取整
运算结果以此为:
ans =

-1 0 4 6

ans =

-2 -1 3 5

ans =

-2 0 3 6

ans =

-1 0 3 5

matlab中想取小数点后三位,但不需要四舍五入有啥函数

比如0.36789我只想要0.367后边的89舍掉,这个在matlab中怎么实现.

matlab中小数取整的函数大约有四个:floor、ceil、round、fix若A=[-2.0,-1.9,-1.55,-1.45,-1.1,1.0,1.1,1.45,1.55,1.9,2.0];floor:朝负无穷方向靠近最近的整数;floor(A)ans=-2-2-2-2-ceil:朝正无穷方向靠近最近的整数;ceil(A)ans=-2-1-1-1-round:取最近的整数(相当于四舍五入)round(A)ans=-2-2-2-1-fix:取离0最近的整数fix(A)ans=-2-1-1-1- 参考技术A floor函数(向下取整)或ceil函数(向上取整)(你的要求,应该是用floor函数)
例如,a=3.1415926保留三位
b=1000*a;
a=floor(b)/1000
得到a=3.1410,a已被赋值3.141
后边5926被舍去,正是你需要的保留方式。

同样的,
b=1000*a;
a=ceil(b)/1000
得到a=3.1420,a被赋值3.142
同样的,还有round取整方法是四舍五入,fix取整方法是往靠近0的取整,四种方式可以满足几乎所有的保留需求。你可以自己操作试试四种方式的区别。

以上是关于怎样使matlab不四舍五入的主要内容,如果未能解决你的问题,请参考以下文章

matlab中想取小数点后三位,但不需要四舍五入有啥函数

怎样保留小数点后六位,六位以后不四舍五入?

如何用MATLAB使矩阵中的元素保留两位小数

angular js中怎样四舍五入

matlab提取数据会自动四舍五入吗

MATLAB中取整用啥函数