自学内容网 自学内容网

【2024_CUMCM】Matlab快速入门

目录

常识

disp and input

字符串合并

sum

提取矩阵指定位置的元素

指定行列

 指定行or指定列(返回行/列向量)

 指定某些行

指定全部元素,按列拼接

 size

repmat

矩阵的运算

基本运算

形状相同的矩阵运算

每个元素同时和常数相乘或相除操作

每个元素乘方

eig

 find

一维

 二维

矩阵与常数的大小判断

 判断语句


常识

每一行语句后面加`;`

注释`Ctrl+R`与取消注释`Ctrl+T`

clear-->清除工作区的所有变量,避免错误调用

clc-->清除命令行窗口中的所有文本

disp and input

disp是输出函数,类似print

input是输入

disp("i am hole_up");

a=[1 2 3]
a=[1,2,3] %两种定义方式相同

a=[1 2 3;
4 5 6;
7 8 9]

disp(a);


A=input('请输入A:');

字符串合并

%1
strcat('1','2')

%2
['1','2']

% 将数字转化为字符串
c=100;
num2str(c);
disp(['c:',num2str(c)]);

sum

% 向量 直接求和
e=[1 2 3]
sum(e)

% 矩阵 需对行和列方向作区分
e=[1,2;3,4;5,6]
% 按列-返回一个行向量
a=sum(e) % 默认是按列
a=sum(e,1) % 两种结果一样
% 按行-得到一个列向量
a=sum(e,2)
% 对整个
a=sum(sum(e))
a=sum(e(:))

提取矩阵指定位置的元素

指定行列

A=[1 1 4 1/3 3;1 1 4 1/3 3;1/4 1/4 1 1/3 1/2;3 3 3 1 3;1/3 1/3 2 1/3 1];
A
A(2,1)
A(3,2)

指定行列,输出一个值

 指定行or指定列(返回行/列向量)

% (2)取指定的某一行的全部元素(输出的是一个行向量)
A
A(2,:)
A(5,:)

% (3)取指定的某一列的全部元素(输出的是一个列向量)
A
A(:,1)
A(:,3)

 指定某些行

A

% 取第二行和第五行
A([2,5],:)

% 取第二行到第五行
A(2:5,:)

% 取第二行和第四行
A(2:2:5,:) %第二到五,中间的2是步长

% 取第二行到末行
A(2:end,:)

% 去第二行到倒数第二行
A(2:end-1,:)

指定全部元素,按列拼接

A(:)

 

 size

A = [1,2,3;4,5,6]
B = [1,2,3,4,5,6]

% r表示行数,c表示列数
[r,c]=size(A)

r=size(A,1)

c=size(A,2)

repmat

A = [1,2,3;4,5,6]
B = repmat(A,2,1)

% 把矩阵A当成矩阵B的一个元素,生成一个2*1的分块矩阵

矩阵的运算

基本运算

A = [1,2;3,4]
B = [1,0;1,1]

% 运算原理与线性代数的原理一致

A*B

inv(B) % B的逆矩阵

B*inv(B)

A/B % -->A*inv(B)

形状相同的矩阵运算

A = [1,2;3,4]
B = [1,0;1,1]

% `.`是一个逐位运算的意思
A .* B % 对应元素之间乘法
A ./ B

每个元素同时和常数相乘或相除操作

A*2
A.*2

B/2
B./2

每个元素乘方

A.^2

A^2

A*A

eig

用于求特征值和特征向量

A = [1 2 3 ;2 2 1;2 0 3]

% 计算全部特征值,构成向量E
E=eig(A)

% 与计算特征值和特征向量用于
% V-->A的特征列向量拼成
% D-->A的特征值组成了一个对角阵
[V,D]=eig(A)

 find

一维

X = [1 0 4 -3 0 0 0 8 6]

% 返回矩阵中值不为0值的索引
ind = find(X)

% 返回前2个不为0的元素的位置:
ind = find(X,2)

 二维

X = [1 -3 0;0 0 8;4 0 6]

% Matlab在存储矩阵时,是一列一列存储的
X(4) %c0

% 将矩阵拍成一列,其中不为零值的行数是多少
ind = find(X)

% 每列是一个单位,按顺序返回不为0值的索引
[r,c] = find(X)
[r,c] = find(X,1) %只找第一个非0元素

 

矩阵与常数的大小判断

X = [1 -3 0;0 0 8;4 0 6]

% 如果满足条件就是1,不满足就是0,结果是一个布尔矩阵

X > 0

X == 4

 判断语句

进行一个简单的成绩等级判断就知道了

a=input('请输入分数:')

if a>=85
    disp("优秀")
elseif a>=60
    disp("良好")
else
    disp("滚")
end

原文地址:https://blog.csdn.net/2302_81240667/article/details/140297224

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!