Matlab在工程中有着非常重要的作用,好多复杂的计算和变换都能通过matlab解决,所以作为一名计算机软件的从业者,我们应该对Matlab有所了解,这是我学习Matlab时所整理的知识点,跟大家分享一下。
Matlab的数据类型与我们平常用的编程语言稍有不同,但是语言都是想通的,有了其他语言的编程基础,Matlab上手会很快。
一、数值类型
1、实数
Matlab的数值类型分为三种,整形,单精度浮点型和双精度浮点型,具体的情况如下。
有几个地方需要注意一下:
- 系统默认的数值类型是double的,所以使用double时可以省略double符号
double类型的数值与其他类型的数值运算时,结果为其他类型的数值,single类型的数值不能和整型直接运算,各种不同位数的整形之间也不能直接运算。
因为系统默认的数据类型是双精度浮点,所以在将变量设置为整数时需要进行转换,matlab提供了如下的转化函数。
函数 | 运算法则 | 例子 |
---|---|---|
floor | 向下取整 | floor(1.4)=1;floor(3.5)=3;floor(-3.5)=-4 |
ceil | 向上取整 | ceil(1.4)=2;ceil(3.5)=3;ceil(-3.5)=-3 |
round | 取最接近的整数,如果小数部分是0.5,则向绝对值大的方向取整 | round(1.4)=1;round(3.5)=4;round(-3.5)=-4 |
fix | 向0取整 | fix(1.4)=1;fix(3.5)=3;fix(-3.5)=-3 |
2、复数
复数由实部和虚部两部分构成,在Matlab中,字符i或j默认作为虚部标志,关于复数的相关函数如下:
函数 | 说明 | 函数 | 说明 |
---|---|---|---|
complex(a,b) | 构造以a为实部,以b为虚部的复数 | i,j | 虚部标识 |
real(z) | 返回复数z的实部 | image(z) | 返回复数z的虚部 |
abs(z) | 返回复数z的模 | angle(z) | 返回复数z的辅角 |
conj(z) | 返回复数z的共轭复数 |
3、无穷量(Inf)和非数值量(NaN)
Matlab中使用Inf和-Inf分别表示正无穷大和负无穷大,NaN表示非数值量。正负无穷大一般是由于运算溢出产生,非数值量则是由于类似0/0或Inf/Inf类型的非正常运算产生。
二、字符与字符串
Matlab将文本作为特征字符串或简单地当做字符串,但是实际存储的是字符串的ASCII码。abs函数可以获得字符串的具体值,使用方法如下:
>> a='abc'