Matlab基础语法
- 文件以字母开头
- % 注释
- help+函数名 帮助文档
- 语句后面不加分号直接在输结果
- clc 清屏
x = 5
x =
5
x = [1 2 3] %行向量
x =
1 2 3
x = [1,2,3] %行向量
x =
1 2 3
x = [1;2;3] %列向量
x =
1
2
3
x = [1 2 3
4 5 6] %手动换行
x =
1 2 3
4 5 6
x = [1 2 3;4 5 6;7 8 9] %自动换行
x =
1 2 3
4 5 6
7 8 9
x = [0:2] %x等于0-2,步长默认为1
x =
0 1 2
x = [0:2]’ %同上,转置
x =
0
1
2
x = [0:0.5:2] %同上,步长为0.5
x =
0 0.5000 1.0000 1.5000 2.0000
x = linspace(0,2,5) %0-2,分成五等份
x =
0 0.5000 1.0000 1.5000 2.0000
x = zeros(2,3) %二行三列0向量
x =
0 0 0
0 0 0
y = ones(2) %2阶全1阵
y =
1 1
1 1
x = eye(2) %2阶单位阵
x =
1 0
0 1
pi %π
ans =
3.1416
i %默认为复数
ans =
0.0000 + 1.0000i
j %同上
ans =
0.0000 + 1.0000i
x = 1/0 %无穷大
x =
Inf
0/0 %空
ans =
NaN
C = A * B %矩阵叉乘
C =
30 37 44
66 85 104
102 133 164
C = A.* B %矩阵点乘
C =
1 6 15
16 25 36
49 64 81
I = A^2 %相当于A*A
I =
30 36 42
66 81 96
102 126 150
J = A.^2 %相当于A.*A
J =
1 4 9
16 25 36
49 64 81
A(1,3) %第一行第三列
ans =
3
A(2) %列排序,第二个值
ans =
4
A(2,:) %第二行,全部元素
ans =
4 5 6
A(1:2,1:3) %1至2行,1至3列
ans =
1 2 3
4 5 6
A==B %每个元素逐个比较,相同为1,不同为0
ans =
1 0 0
1 1 1
1 1 1
A>3&B<5 %A中元素大于3且B中元素小于5
ans =
0 0 0
1 0 0
0 0 0
A>3|B<5
ans =
1 1 0
1 1 1
1 1 1
xor(A>3,B<7) %异或
ans =
1 1 1
0 0 0
1 1 1
A(A<0) = 0
A =
1 2 3
4 5 6
7 8 9
A<3
ans =
1 1 0
0 0 0
0 0 0
B(B(:,1)<2,:) = 0
B =
0 0 0
4 5 6
7 8 9
C = flipud(A) %上下颠倒
C =
7 8 9
4 5 6
1 2 3
C = rot90(A) %旋转90度
C =
3 6 9
2 5 8
1 4 7
sum(A) %列相加,相当于sum(A,1)
ans =
12 15 18
sum(A,2) %行相加
ans =
6
15
24
sum(A,1)
ans =
12 15 18
sum(sum(A))
ans =
45
max(A) %每列最大值
ans =
7 8 9
max(A,[],1)
ans =
7 8 9
max(A,[],2)
ans =
3
6
9
max(A,2) % a>2?a:2
ans =
2 2 3
4 5 6
7 8 9
x = 0:pi/6:pi %0到π等分6份
x =
0 0.5236 1.0472 1.5708 2.0944 2.6180 3.1416
y = sin(x)
y =
0 0.5000 0.8660 1.0000 0.8660 0.5000 0.0000
z = asin(y)
z =
0 0.5236 1.0472 1.5708 1.0472 0.5236 0.0000
abs(x) %绝对值
ans =
0 0.5236 1.0472 1.5708 2.0944 2.6180 3.1416
sqrt(x)
ans =
0 0.7236 1.0233 1.2533 1.4472 1.6180 1.7725
ceil(x) %ceiling
ans =
0 1 2 2 3 3 4
fix(x) %靠近0取整
ans =
0 0 1 1 2 2 3
floor(x) %向下取整
ans =
0 0 1 1 2 2 3
round(x) %四舍五入
ans =
0 1 1 2 2 3 3