1.sin(cos(pi))的两种方法
1.1第一种方法
cos(pi)
ans=-1
sin(ans)
ans=-0.8415
1.2第二种方法
sin(cos(pi))
ans=-0.8415
切记:不过用什么方法,结果必须一致!
2.变量(variables)
2.1定义变量
- 在Matlab中,等号的意思是赋值,将右边的值赋给左边,所以“10=A”错误!
A=10 √
10=A ×
- 大写和小写无差别
- 不能以数字开头
2.2变量类型
- 在Matlab中不需要对变量做声明,默认为double,图片来源于:https://www.bilibili.com/video/av14503445/?p=2
图2-1 Matlab变量类型
2.2.1 查看变量类型
-
whos
图2-2 whos查看变量类型
2.3 Special variables and constants
- Inf 无限大
- eps 无线小
- ans 结果
- pi π
- iskeyword 查找关键字
2.3.1把关键字当做变量名时怎么办?当然clear啊!
cos='This string.'; %把cos变为一个变量名,并把字符串赋值给cos
cos(8)
ans=‘r’
- 不要用关键字作为变量名,上述cos例子就是反例,当把关键字作为变量名时,cos就不能正常使用!!!
- 当出现这种情况时,可以用以下操作命令把cos变量除去,clear(不加变量名,会将所有变量删除)
clear cos
2.3.2如何显示π的小数点很多位?当然用format long!!!
pi
ans=
3.1416
format long
pi
ans=
3.141592653589793
图2-3 改变数字格式
2.3.3在命令行窗口Command Line Terminal中分号的作用
- 表示不显示运算
b=10
ans=
10
-
方向键“↑”和“↓”可以查询变量
2.3.4一些关键函数(小技巧)
图2.4 一些小技巧
3.输入Array(Vector and Matrix)
3.1输入向量
- Row vector(行向量)
>> a = [1 2 3 4] %注意:数字之间有空格
- Column vector (列向量)
>> b = [1; 2; 3; 4] %注意:分号的作用就是分行
a*b
ans=
30
b*a
ans=
1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16
3.2输入Matrix
A=[1 21 6; 5 17 9; 31 2 7]
ans=
1 21 6
5 17 9
31 2 7
3.3Array Indexing(矩阵索引)
3.3.1索引向量时
- 向量名()
>>a=[1 2 3 4]
>>a(3)
>>ans=
3
3.3.2索引矩阵时
3.3.2.1方法一
- 矩阵名(行,列)
>>A=[1 21 6; 5 17 9; 31 2 7]
>>ans=
1 21 6
5 17 9
31 2 7
>>A (2,3)
ans=
9
>>A([1 3],[1 3]) %前边的[1 3]表示第1和3行,后边的[1 3]表示第1和第3列
>>ans=
1 6
31 7
3.3.2.1方法二
- 矩阵名();从上到下、从左到右依次
>>A=[1 21 6; 5 17 9; 31 2 7]
>>ans=
1 21 6
5 17 9
31 2 7
>>A (5)
ans=
17
>>A([1 3 5])
>>ans=
1 31 17
>>A([1 3; 1 3])
>>ans=
1 31
1 31
3.3Replacing Entries(取代矩阵中的元素)
>>A=[1 21 6; 5 17 9; 31 2 7]
>>ans=
1 21 6
5 17 9
31 2 7
>>A(1,2)=76
>>ans=
1 76 6
5 17 9
31 2 7
3.4Colon Operator(:)
>>d=1:5 %仅有两个数时,第一个表示起始数,第二个表示结束的数
>>ans=
1 2 3 4 5
>>d=1:2:10 %有三个数时,第一个表示起始数,第二个表示步长,第三个表示结束的数
>>ans=
1 3 5 7 9
>>B=[1:5;2:3:15;-2:0.5:0]
>>ans=
1 2 3 4 5
2 5 8 11 14
-2 -1.5 -1 -0.5 0
- 用Colon Operator删除某一行
>>>A
>>ans=
1 76 6
5 17 9
31 2 7
>>>A(3, :)
>>>ans=
31 2 7
>>>A(3 , : )=[]
>>>ans=
1 76 6
5 17 9
3.5Array Concatenation
>> A=[1 2;3 4];
>> B=[9 9;9 9];
>>F=[A B]
>>F =
1 2 9 9
3 4 9 9
3.6Array Manipulation
- Opreators on array: + - * / ^ . '
3.6.1与矩阵的运算
3.6.1.1+
>> A=[1 2 3; 4 5 6; 7 8 9]
>> B=[3 4 5;1 2 4;5 7 9]
>>A+B
>>>ans=
4 6 8
5 7 10
12 15 18
3.6.1.2*
>> A=[1 2 3; 4 5 6; 7 8 9]
>> B=[3 4 5;1 2 4;5 7 9]
>>A*B
>>ans=
20 29 40
47 68 94
74 107 148
3.6.1.3.*对应元素相乘
>> A=[1 2 3; 4 5 6; 7 8 9]
>> B=[3 4 5;1 2 4;5 7 9]
>>A.*B
>>ans=
3 8 15
4 10 24
35 56 81
3.6.2与实数的运算结果
3.6.2.1+“实数与每一个元素相加”
>> A=[1 2 3; 4 5 6; 7 8 9]
>>a=2
>>>A=
1 2 3
4 5 6
7 8 9
3.6.2.2^ 和.^
>>A=[1 2 3; 4 5 6; 7 8 9]
>>a=2
>>A^2
>>ans=
30 36 42
66 81 96
102 126 150
>>A.^a
>>ans=
1 4 9
16 25 36
49 64 81
图2.5 矩阵运算
3.6.3Some Special Matrix
图2.6 特殊矩阵3.6.4Some Matrix Related Functions
>> A=[1 2 3;0 5 6;7 0 9]
>>A =
1 2 3
0 5 6
7 0 9
>>max(A) %每一列的最大值
>>ans =
7 5 9
>>max(max(A))
%所有元素的最大值
>>ans =
9
图2.7 矩阵运算
网友评论