MATLAB基础教程薛山第二版课后习题答案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《MATLAB及应用》实验指导书
《MATLAB及应用》实验指导书
班级:T1243-7
姓名:柏元强
学号:20120430724
总评成绩:
汽车工程学院
电测与汽车数字应用中心
实验04051001 MATLAB语言基础1
实验04051002 MATLAB科学计算及绘图13
实验04051003 MATLAB综合实例编程31
b=exp(3)
c=cos(3*pi/4)
3.设 , ,计算:
(1)
(2)
(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)
(2)
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.设 , , , ,判断下面表达式的值。
(1)
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)
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)
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);
实验04051001MATLAB语言基础
操作成绩
报告成绩
1
1)熟悉MATLAB的运行环境
2)掌握MATLAB的矩阵和数组的运算
3)掌握MATLAB符号表达式的创建
4)熟悉符号方程的求解
2
第二章
1.创建double的变量,并进行计算。
(1)a=87,b=190,计算 a+b、a-b、a*b。
clear,clc
(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];
求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);
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)
(3)
(4)
(5)
(6)
clear,clc
a=39;b=58;c=3;d=7;
a>b,a<c,a>b&&b>c,a==d,a|b>c,~~d
7.编写脚本,计算上面第2题中的表达式。
clear,clc
disp('sin(60)=');
disp(sind(60))
disp('exp(3)=');
disp(exp(3))
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)
(2) e3
(3)
clear,clc
a=sind(60)
veБайду номын сангаасR=vec';
disp('vecR=[]');disp(vecR)
a=length(vec);
vecB=[vec(a/2+1:a) vec(1:a/2)];
disp('vecB=[]');disp(vecB)
C=find(vec<45);
vecS=vec(C);
disp('vecS=[]');disp(vecS)
(2)创建一个新的向量vecB,使其为vec中的前半部分与后半部分对换的结果,这样vecB包含的元素为vec的后半部分紧接着vec的前半部分。
(3)创建一个新的向量vecS,使其包含vec中所有小于45的元素,且元素按照vec中的顺序排列。
(4)创建一个新的向量vec3R,使其从vec中从最后一个元素开始,并且间隔三个元素取一个元素,直到第一个元素为止。
vec3R=vec(end:-4:1);
disp('vec3R=[]');disp(vec3R)
vecN=find(vec==2|vec==4);
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<c');disp(a<c)
disp('a>b&&b>c');,disp(a>b&&b>c)
《MATLAB及应用》实验指导书
班级:T1243-7
姓名:柏元强
学号:20120430724
总评成绩:
汽车工程学院
电测与汽车数字应用中心
实验04051001 MATLAB语言基础1
实验04051002 MATLAB科学计算及绘图13
实验04051003 MATLAB综合实例编程31
b=exp(3)
c=cos(3*pi/4)
3.设 , ,计算:
(1)
(2)
(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)
(2)
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.设 , , , ,判断下面表达式的值。
(1)
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)
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)
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);
实验04051001MATLAB语言基础
操作成绩
报告成绩
1
1)熟悉MATLAB的运行环境
2)掌握MATLAB的矩阵和数组的运算
3)掌握MATLAB符号表达式的创建
4)熟悉符号方程的求解
2
第二章
1.创建double的变量,并进行计算。
(1)a=87,b=190,计算 a+b、a-b、a*b。
clear,clc
(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];
求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);
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)
(3)
(4)
(5)
(6)
clear,clc
a=39;b=58;c=3;d=7;
a>b,a<c,a>b&&b>c,a==d,a|b>c,~~d
7.编写脚本,计算上面第2题中的表达式。
clear,clc
disp('sin(60)=');
disp(sind(60))
disp('exp(3)=');
disp(exp(3))
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)
(2) e3
(3)
clear,clc
a=sind(60)
veБайду номын сангаасR=vec';
disp('vecR=[]');disp(vecR)
a=length(vec);
vecB=[vec(a/2+1:a) vec(1:a/2)];
disp('vecB=[]');disp(vecB)
C=find(vec<45);
vecS=vec(C);
disp('vecS=[]');disp(vecS)
(2)创建一个新的向量vecB,使其为vec中的前半部分与后半部分对换的结果,这样vecB包含的元素为vec的后半部分紧接着vec的前半部分。
(3)创建一个新的向量vecS,使其包含vec中所有小于45的元素,且元素按照vec中的顺序排列。
(4)创建一个新的向量vec3R,使其从vec中从最后一个元素开始,并且间隔三个元素取一个元素,直到第一个元素为止。
vec3R=vec(end:-4:1);
disp('vec3R=[]');disp(vec3R)
vecN=find(vec==2|vec==4);
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<c');disp(a<c)
disp('a>b&&b>c');,disp(a>b&&b>c)