MATLAB基础教程薛山第二版课后习题答案讲解
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《MATLAB及应用》实验指导书《MATLAB及应用》实验指导书
班级: T1243-7
姓名:柏元强
学号: 20120430724
总评成绩:
汽车工程学院
电测与汽车数字应用中心
目录
实验04051001 MATLAB语言基础 (1)
实验04051002 MATLAB科学计算及绘图 (18)
实验04051003 MATLAB综合实例编程 (31)
实验04051001 MATLAB语言基础
1实验目的
1)熟悉MATLAB的运行环境
2)掌握MATLAB的矩阵和数组的运算
3)掌握MATLAB符号表达式的创建
4)熟悉符号方程的求解
2实验内容
第二章
1.创建double的变量,并进行计算。
(1)a=87,b=190,计算 a+b、a-b、a*b。
clear,clc
a=double(87);
b=double(190);
a+b,a-b,a*b
(2)创建 uint8 类型的变量,数值与(1)中相同,进行相同的计算。
clear,clc
a=uint8(87);
b=uint8(190);
a+b,a-b,a*b
2.计算:
(1)
() sin 60
(2) e3
(3) 3cos 4⎛⎫π ⎪⎝⎭
clear,clc a=sind(60) b=exp(3) c=cos(3*pi/4)
3.设2u =,3v =,计算:
(1) 4
log uv
v
(2) ()
2
2
e
u
v v u +-
(3)
clear,clc u=2;v=3; a=(4*u*v)/log(v) b=((exp(u)+v)^2)/(v^2-u) c=(sqrt(u-3*v))/(u*v)
4.计算如下表达式:
(1) ()()
3542i i -+
(2)
()
sin 28i -
clear,clc (3-5*i)*(4+2*i) sin(2-8*i)
5.判断下面语句的运算结果。
(1) 4 < 20 (2) 4 <= 20
(3) 4 == 20 (4) 4 ~= 20 (5) 'b'<'B'
clear,clc
4 < 20 , 4 <= 20,4 == 20,4 ~= 20,'b'<'B'
6.设39a =,58b =,3c =,7d =,判断下面表达式的值。
(1) a b > (2) a c < (3) &&a b b c >> (4) a d == (5) |a b c > (6) ~~d
clear,clc a=39;b=58;c=3;d=7;
a>b,a
7.编写脚本,计算上面第2题中的表达式。
clear,clc disp('sin(60)='); disp(sind(60)) disp('exp(3)='); disp(exp(3))
disp('cos(3*pi/4)='); disp(cos(3*pi/4))
8.编写脚本,输出上面第6题中的表达式的值。
clear,clc a=39;b=58;c=3;d=7;
disp('a>b');disp(a>b) disp('a disp('a>b&&b>c');,disp(a>b&&b>c) disp('a==d');disp(a==d) disp('a|b>c');disp(a|b>c) disp('~~d');disp(~~d) 第三章 1. 在命令提示符下输入以下两条命令: >> x = [ 9 3 0 6 3] >> y = mod((sqrt(length(((x+5).*[1 2 3 4 5]))*5)),3) 求y值为多少? 2. 在MATLAB中运行以下命令: a = [3, 7, 2, 7, 9, 3, 4, 1, 6]; b = [7]; a(4) = []; vec1 = a==b; vec2 = mod(a,2)==0; c = sum(vec1); vec3 = vec1+vec2; d = vec3.*a; vec4 = find(a > 5); e = a(vec4) + 5; vec5 = find(a < 5); f = vec5.^2; 求c、d、e、f的值。 clear,clc a = [3, 7, 2, 7, 9, 3, 4, 1, 6]; b = [7]; a(4) = []; vec1 = a==b; vec2 = mod(a,2)==0; c = sum(vec1); vec3 = vec1+vec2; d = vec3.*a; vec4 = find(a > 5); e = a(vec4) + 5; vec5 = find(a < 5); f = vec5.^2; disp('c=');disp(c) disp('d=');disp(d) disp('e=');disp(e) disp('f=');disp(f) 3. 向量操作时MATLAB的主要部分,使用给出的向量来做下面的练习。 注意: 不要直接给出下列问题中任何一个的最终结果,不要在问题的任何部分使用迭代。 vec=[4 5 2 8 4 7 2 64 2 57 2 45 7 43 2 5 7 3 3 6253 3 4 3 0 -65 -343] (1)创建一个新的向量vecR,使其为vec的转置。 (2)创建一个新的向量vecB,使其为vec中的前半部分与后半部分对换的结果,这样vecB包含的元素为vec的后半部分紧接着vec的前半部分。 (3)创建一个新的向量vecS,使其包含vec中所有小于45的元素,且元素按照vec中的顺序排列。 (4)创建一个新的向量vec3R,使其从vec中从最后一个元素开始,并且间隔三个元素取一个元素,直到第一个元素为止。 (5)创建一个新的向量vecN,使其包含vec中所有等于2或4的元素的索引值。 (6)创建一个新的向量vecG,使其包含vec中去掉索引值为奇数且取值为2或4的元素后的所有元素。 clear,clc vec=[4 5 2 8 4 7 2 64 2 57 2 45 7 43 2 5 7 3 3 6253 3 4 3 0 -65 -343]; vecR=vec'; disp('vecR=[]');disp(vecR) a=length(vec);