0%

Matlab基础

系统环境

如果命令很长,可以分两行来输入。(需要利用续行符…)

设置当前文件夹

步骤:先建立文件夹,然后在Matlab命令行中用cd命令+路径设置

工作区也称为工作区,用于变量的显示(以表格形式)和操作(可以编辑,删除)

Matlab的搜索路径

在命令行中输入一条命令后,Matlab

变量 –>内部函数–>程序文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
%{Matlab的搜索路径有一定的顺序:变量>内部函数>程序文件,下面是一个实例:}%
x=sin(1) %这里的sin是内部函数,正弦,所以结果应该是:0.8415
sin=[1,2,3,4,5]; %这里定义sin为一个变量,包含5个向量元素,不是内部函数了
x=sin(1) %因为变量的级别高于内部函数,所以这个命令的结果是1而不是0.8415

%{Matlab的搜索路径有一定的顺序:变量>内部函数>程序文件,下面是一个实例:}%
x=sin(1) %这里的sin是内部函数,正弦,所以结果应该是:0.8415
sin=[1,2,3,4,5]; %这里定义sin为一个变量,包含5个向量元素,不是内部函数了
x=sin(1) %因为变量的级别高于内部函数,所以这个命令的结果是1而不是0.8415
%{此时如果要计算sin的本来值,可以在工作区将已经定义的sin变量删除}%

% Matlab的文件搜索
% 如何设置文件搜索路径
% 1 使用path命令。例如>>path(path,'需要搜索的路径')
% 2 在窗口上设置
% 搜索的顺序:1 当前文件;2 已经设置的搜索路径中;3 如果两个位置都没有搜索结果则会报错

数据类型

分类

整型:

分为:

1:有符号整数

2: 无符号整数

然后又分别分为8,16,32,64位整数

需要记住:

int是带符号,uint是不带符号

带符号8位整数的最大值是127

提供了数据类型转换函数

浮点数

同样提供了类型转换函数:

1 single函数:将其他类型的数据转换为单精度型

2 double函数:将其他类型的数据转换为双精度型

复型

复型数据包括实部和虚部两个部分,都默认为双精度单位,用i或者j来表示

常用函数有两个:

real:获取复数的实部

imag:获取复数的虚部

数值数据的输出格式

使用format命令,格式是:

format 格式符

注意:format命令只影响数据输出的格式,而不影响数据的计算和存储

常用数学函数

调用方法:

函数名(函数自变量的值)

函数在运算时是将函数逐项作用于矩阵的每个元素上,所以最后运算的结果就是一个与自变量同类型的矩阵

作用于矩阵,结果是矩阵

1 函数的调用格式:(实例)

2 常用函数的应用

三角函数

三角函数也分为两种类型:

以弧度为单位的函数和以角度为单位的函数,如果是以角度为单位的函数,则在调用时应该在函数名后面加上d,以示区别。

abs函数

可以用来求实数的绝对值、复数的模、字符串的ASCII码值,具体操作见后面代码

取整函数

有round、fix、floor、ceil四种类型,具体实例见文章尾部

3 函数应用举例

1 分别求一个三位正整数的个、十、百位

2 求[1,100]区间的所有素数

代码见后面。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
% 转换函数实例
class(4)
(class(single(4)))
%{结果分别是ans ='double',ans ='single'}%



%format来设置数值数据的输出形式
% 格式:format 格式符
% 实例:
format long
50/3
% 此时的输出结果是:16.666666666666668
format
50/3
% 重置以后结果变回了:16.6667

%常用函数实例
%exp函数实例
% 在matlab中exp意思是以自然常数e为底的指数函数。返回 e(自然对数的底)的幂次方。
A = [4,2;3,6]
B = exp(A)
%{输出结果:B =54.5982 7.3891 20.0855 403.4288}%
% 上行结果格式和真实情况不同

%三角函数的两种调用方法:
% 1
cos(pi)
% 2
cosd(180)
% 两种方法结果肯定是一样的
% 结果:-1

%abs函数使用实例:
% 1 求绝对值
abs(-100)
% ans = 100

%2 求复数的模
abs(5+12i)
% ans = 13

%3 求字符串的ASCII码
abs('abd')
% ans 87 98 100

% 取整函数
% 1 round:按照四舍五入取整
% 2 ceil:向上取整,即取大于等于这个数的第一个整数
% 3 floor:向下取整,取小于等于这个数的第一个整数
% 4 fix: 取靠近0的那个整数,也就是舍去小数取整
% 实例:
round(4.7)
fix(-3.2)
floor(3.6)
ceil(-3.8)
%ans=5;ans=-3;ans=3;ans=-3

% 函数应用举例1:分别求出一个三位整数的个位、十位、百位
% rem是取余函数
m=345;
m1=rem(m,10)%个位数
m2=rem(fix(m/10),10)
m3=fix(m/100)
% m1=5;m2=4;m3=3

%函数应用举例2:求[1,00]区间的所有素数
x=1:100;
k=isprime(x);%isprime用来判断一个数是否能被2整除,能为真,不能则为假
k1=find(k);%find用来找出为真的x序列
p=x(k1)%输出1到100之间的素数

对句柄的理解

句柄是matlab语言独有的参数,相当于C语言的指针。