MATLAB上机答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一熟悉Matlab工作环境
1、熟悉Matlab的5个基本窗口
思考题:
(1)变量如何声明,变量名须遵守什么规则、是否区分大小写。
答:变量一般不需事先对变量的数据类型进行声明,系统会依据变量被赋值的类型自动进行类型识别,也就是说变量可以直接赋值而不用提前声明。变量名要遵守以下几条规则:变量名必须以字母开头,只能由字母、数字或下划线组成。
变量名区分大小写。
变量名不能超过63个字符。
关键字不能作为变量名。
最好不要用特殊常量作为变量名。
(2)试说明分号、逗号、冒号的用法。
分号:分隔不想显示计算结果的各语句;矩阵行与行的分隔符。
逗号:分隔欲显示计算结果的各语句;变量分隔符;矩阵一行中各元素间的分隔符。
冒号:用于生成一维数值数组;表示一维数组的全部元素或多维数组某一维的全部元素。
(3)linspace()称为“线性等分”函数,说明它的用法。
LINSPACE Linearly spaced vector. 线性等分函数
LINSPACE(X1, X2) generates a row vector of 100 linearly
equally spaced points between X1 and X2.
以X1为首元素,X2为末元素平均生成100个元素的行向量。
LINSPACE(X1, X2, N) generates N points between X1 and X2.
For N < 2, LINSPACE returns X2.
以X1为首元素,X2为末元素平均生成n个元素的行向量。如果n<2,返回X2。
Class support for inputs X1,X2:
float: double, single
数据类型:单精度、双精度浮点型。
(4)说明函数ones()、zeros()、eye()的用法。
ones()生成全1矩阵。
zeros()生成全0矩阵。
eye()生成单位矩阵。
2、Matlab的数值显示格式
思考题:
(1)3次执行exist(’pi’)的结果一样吗如果不一样,试解释为什么
>> pi
ans =
>> sin(pi); >> exist('pi') ans =
5>> pi=0;
>> exist('pi')
ans =
1
>> pi
pi =
>> clear
>> exist('pi')
ans =
5
>> pi
ans =
答:3次执行的结果不一样。exist()函数是返回变量搜索顺序的一个函数。在第一次执行时返回5代表变量pi是由Matlab构建的变量。在第二次执行时已经通过赋值语句定义了变量pi,返回1代表pi是工作空间变量。第三次执行前清除了工作空间,此时pi为系统默认常量,和第一次执行时性质一样,所以又返回5。
(2)圆周率pi是系统默认常量,为什么会被改变为0。
pi=0 为赋值语句,此时pi不再是系统默认常量,而是定义的变量了。
二MATLAB语言基础
1、向量的生成和运算
练习:使用logspace()创建1~4π的有10个元素的行向量。
>> A=logspace(0,,10)
A =
2、矩阵的创建、引用和运算
(1)矩阵的创建和引用
练习:创建以下矩阵:A为3×4的全1矩阵、B为3×3的0矩阵、C为3×3的单位矩阵、D为3×3的魔方阵、E由C和D纵向拼接而成、F抽取E的2~5行元素生成、G由F经变形为3×4的矩阵而得、以G为子矩阵用复制函数生成6×8的大矩阵H。
>> A=ones(3,4),B=zeros(3,3),C=eye(3,3),D=magic(3)
A =
1 1 1 1
1 1 1 1
1 1 1 1
B =
0 0 0
0 0 0
0 0 0C =
1 0 0
0 1 0
0 0 1
D =
8 1 6
3 5 7
4 9 2
>> E=[C;D], F=E(2:5,:), G=reshape(F,3,4)
E =
1 0 0
0 1 0
0 0 1
8 1 6
3 5 7
4 9 2
F =
0 1 0
0 0 1
8 1 6
3 5 7
G =
0 3 1 1
0 1 5 6
8 0 0 7
>> H=repmat(G,2)
H =
0 3 1 1 0 3 1 1
0 1 5 6 0 1 5 6
8 0 0 7 8 0 0 7
0 3 1 1 0 3 1 1
0 1 5 6 0 1 5 6
8 0 0 7 8 0 0 7 2)矩阵运算
练习:1)用矩阵除法求下列方程组的解x=
>> A=[6 3 4;-2 5 7;8 -1 -3],B=[3;-4;-7]
A =
6 3 4
-2 5 7
8 -1 -3B =
3
-4
-7
>> x=A\B
x =
2)求矩阵的秩;>> r=rank(A)
r =
3