matlab学习
matlab学习笔记
基础语法
注释:%
分号:用于区分数组的行或用于一语句的结尾
下标从1开始
- fix() 取整
- floor() 取不大于x的最大整数
- ceil() 取不小于x的最小整数
- round() 四舍五入
- mod() 求模或有符号取余
- rem() 求除法的余数
- sign() 符号函数
算术运算符
+、-、×、.×(数组乘法)、/(右除)、./(数组右除,就是学过的正常除法)、\(左除 a/b=b\a)、.\(数组左除)、、.(数组乘方)、`(矩阵共轭转置)、.\'(矩阵转置)
数据类型
- 整数
matlab中数字的数据类型有双精度(默认)、单精度以及各种有符号和无符号整型
uint8:8位无符号整数,范围为0-255(2^8-1)
int8:8位有符号整数,范围为-128-127(-27-27-1)
uint16:16位无符号整数,范围为0-65535(2^16-1)
int16:16位有符号整数,范围为-32768-32767(-215-215-1)
uint32:32位无符号整数,范围为0-4294967285(2^32-1)
int32:32位有符号整数,范围为(-231-231-1)
uint64:64位无符号整数,范围为(0-2^64-1)
int64:64位有符号整数,范围为0(-263-263-1)
class(数) 查看数据类型
不同的整数类型间不允许运算
另外还有溢出问题 就是超了那种类型所能表示的数的范围
- 浮点数
- 复数
创建复数的两种方法:
- 直接输 a+bi
- 使用complex函数 complex(a,b) a可以是标量,维数大小相同的向量或矩阵或多维数组 ab可以是不同的数据类型
- 逻辑变量 logical
使用1 0分别表示逻辑真与逻辑假
稀疏矩阵
matlab可以通过一个数组对另一个数组进行索引
A=5:5:50;
B=[1 3 6 7 10]
C=A(B)
输出C为: 5 15 30 35 50
将一数组中大于0.5的元素置为0
A=rand(5);
B=A>0.5;
A(B)=0
0 0.0975 0.1576 0.1419 0
0 0.2785 0 0.4218 0.0357
0.1270 0 0 0 0
0 0 0.4854 0 0
0 0 0 0 0
还可以更改更多类型,比如:找出数组中的素数,置为0
不同的数据类型转换的时候,由高精度转向低精度时,对数据进行四舍五入。如果定义范围大的数据类型转为定义范围小的数据类型,返回目标数据类型的上限或下限
记:
intmax(\'type\') \'type\'类型的最大整数值 也有min
realmax(\'type\') \'type\'类型的最大浮点实数值 也有min