Matlab编程实验报告docWord格式文档下载.docx
- 文档编号:21004374
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:44
- 大小:26.32KB
Matlab编程实验报告docWord格式文档下载.docx
《Matlab编程实验报告docWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《Matlab编程实验报告docWord格式文档下载.docx(44页珍藏版)》请在冰豆网上搜索。
z3=(exp.*a)-exp.*a))/2.*sin(a+
z3=
t2
t
(4)z4t2
2,其中t=0:
:
2t1
3
用逻辑表达式求分段函数值。
t=0:
;
z4=(t>
=0&
t<
1).*(t.*t)+(t>
=1&
2).*(t.*t-1)+(t>
=2&
3).*(t.*t-2.*t-1)
z4=
00
2.已知
12
34
4
A34
7
87,B
65
求下列表达式的值:
(1)A+6.*B和A-B+I(其中I为单位矩阵)。
(2)A*B和A.*B。
(3)A^3和A.^3。
(4)A/B和B\A。
(5)[A,B]和[A([1,3],:
);
B^2]。
A=[1234-4;
34787;
3657];
B=[13-1;
203;
3-27];
z1=A+6.*B
1852-10
467105
215349
C=eye(3);
z2=A-B+C
1231-3
32884
0671
z3=A*B
684462
309-72596
154-5241
z4=A.*Bz4=
121024
680261
9-13049
z5=A^3
z5=
3722623382448604
247370149188600766
78688454142118820
z6=A.^3
z6=
172839304-64
39304343658503
27274625343
z7=A/B
z7=
z8=B\A
z8=
z9=[A,B]
z9=
-4
-1
87
-2
z10=[A([1,3],:
B^2]
z10=
11
19
20
-5
40
3.设有矩阵A和B
16
6
8
9
10
17
A11
13
14
15,B
23
18
21
22
24
25
(1)求它们的乘积C。
(2)将矩阵C的右下角3×
2子矩阵赋给D
(3)查看MATLAB工作空间使用情况。
A=[12345;
678910;
1112131415;
1617181920;
2122232425];
B=[3016;
17-69;
023-4;
970;
41311];
C=A*B
C=
9315077
258335237
423520397
588705557
753890717
D=C(3:
5,2:
3)
D=
520397
705557
890717
whos
NameSizeBytesClassAttributes
A
5x5
200
double
B
5x3
120
C
120double
D
3x2
48double
4.完成下列操作:
(1)求[100,999]之间能被21整除的数的个数。
先利用冒号表达式,再利用find和length函数。
A=100:
999;
B=find(mod(A,21)==0)
B=
Columns1through16
27
48
69
90
111
132
153
174
195
216
237
258
279
300
321
Columns17through32
342363384405426447468489510531552
573594615636657
Columns33through43
678699720741762783804825846867888
C=length(B)C=
43
(2)建立一个字符串向量,删除其中的大写字母。
X='
LIsaisABeAutifulGirl'
Y=find(X>
='
A'
&
X<
Z'
)
Y=
129111321
X(Y)=[]
X=
saiseutifulirl
利用find函数和空矩阵。
5.由指令A=rand(3,5)生成二维数组A,试求该数组中所有大于的元素的位
置,分别求出它们的“全下标”和“单下标”。
(提示:
find和sub2ind)
A=rand(3,5)A=
Columns1through4
Column5
K=find(A>
K=
[C,D]=ind2sub(size(A),K)
6.先运行clear,formatlong,A=rand(3,3),然后根据A写出两个矩阵:
一个对角阵B,其相应元素由A的对角元素构成;
另一个矩阵C,其对角元素全为0,而其余元素与对应的A阵元素相同。
diag)
clear
formatlong
A=rand(3,3)
A=
b=diag(A)
b=
B=diag(b)B=
C=A-BC=
三、实验报告及要求
实验报告给出详细的实验过程、代码以及实验结果,必要时按照实验任务要求对结果进行分析。
实验二多项式及字符运算
1、掌握多项式的表示与创建方法。
2、掌握多项式的四则运算以及多项式求根方法。
3、掌握字符串数组的创建及操作方法。
1、已知p(x)2x3x23,分别取x2和一个[22]矩阵,求p(x)在x处的值。
p=[2-103];
x=2;
y=polyval(p,x)
y=
15
x1=[12;
34];
y1=polyval(p,x1)
y1=
415
48115
2、有3个多项式p1(x)x42x34x25,p2(x)x2,p3(x)x22x3,试
进行下列操作:
求p(x)=p1(x)+p2(x)p3(x)。
(1)求p(x)的根。
p1=[12405];
p2=[12];
p3=[123];
R=conv(p2,p3)
R=
1476
p4=[01476];
p5=p1+p4
p5=
138711
r=roots(p5)
r=
-
(2)
当x取矩阵A的每一元素时,求P(x)的值。
其中
1.2
1.4
A0.75
3.5
2.5
A=[-1;
2;
05];
y=polyval(p5,A)
+003*
(3)当以矩阵A为自变量时,求P(x)的值。
其中A的值与(3)相同。
X=A
Y=X^4+3*X^3+8*X^2+7*X^1+11Y=
3.用两种方法建立如下的二维字符串数组:
第一行为“Matlab编程”,第二行为“实验环节”,最后利用该二维字符串形成一个一行字符串数组,“Matlab
编程实验环节”>
A=['
Matlab编程'
'
实验环节'
]
Matlab编程
实验环节
B=str2mat('
'
C=[B(1,:
),B(2,:
)]
Matlab编程实验环节
实验报告给出详细的实验代码以及实验结果,必要时按照实验任务要求对结果进行分析。
实验三Matlab符号计算
1、熟练掌握MATLAB符号表达式的创建
2、熟练掌握符号表达式的代数运算
3、掌握符号表达式的化简和替换
4、熟练掌握符号微积分
5、熟练掌握符号方程的求解
1.创建符号表达式:
fax3bx2cxd。
(用两种方式分别创建)
f=sym('
a*x^3+b*x^2+c*x+d'
f=
a*x^3+b*x^2+c*x+d
symsabcd
f=a*x^3+b*x^2+c*x+d
2.创建符号矩阵。
acos(x)bsin(y)
by2
cz2
ax2
A=sym('
[a*cos(x)+b*sin(y)10+20;
a*x^2+b*y^2+c*z^2sqrt(t*t+1)]'
)A=
[a*cos(x)+b*sin(y),
30]
[a*x^2+b*y^2+c*z^2,(t^2+1)^(1/2)]
3.已知表达式f1sin2(x),g2x1,计算当x1时f的值;
计算f与g的
复合函数,f、g的逆函数。
f=1-sin(x)*sin(x);
x=1
subs(f)
ans=
1-sin(x)*sin(x)'
>
g=sym('
2*x+1'
compose(f,g)ans=
1-sin(2*x+1)^2>
finverse(f)
Warning:
finverse(1-sin(x)^2)isnotunique.
asin((1-x)^(1/2))
finverse(g)ans=
x/2-1/2
4.符号函数fax3
cyd,分别对x、y、c、d进行微分,对y趋
向于1求极限,并计算对
x的二次、三次微分,用findsym得出符号变量。
symsxyabcd
f=a*x^3+b*y^2+c*y+d;
A=diff(f,x)A=3*a*x^2
B=diff(f,y)B=
c+2*b*y
C=diff(f,c)C=
y
D=diff(f,d)D=
L=limit(a*x^3+b*y^2+c*y+d,y,1)
L=
a*x^3+b+c+d
E=diff(f,x,2)
E=
6*a*x
F=diff(f,x,3)
F=
6*a
findsym(E)
a,x
findsym(F)
a
5.求极限lim(1
2L
n)。
n
symsn;
L=limit(symsum(1/2^n,n,0,inf),n,inf)
6.求定积分
x
和不定积分
xy
。
x)2dx
xedxdy
1(1
symsx;
f=sqrt(x)/(1+x)^2;
int(f,x,1,inf)
pi/4+1/2
symsxy;
q=x*exp(-x*y);
I=int(q)
I=
-(x*y+1)/(y^2*exp(x*y))
S=int(I)
S=
(x*y+2)/(y^3*exp(x*y))
7.求微分方程dy2dy2y0在满足y(0)1,y'
(0)0的解。
dx2dx
y=dsolve('
D2y+2*Dy+2*y'
y(0)=1'
Dy(0)=0'
x'
y=
cos(x)/exp(x)+sin(x)/exp(x)
8.求解微分方程组
dx
2x3y
dt
dy
x2y
[x,y]=dsolve('
Dx=2*x+3*y'
Dy=x-2*y'
x(0)=1'
y(0)=2'
t'
(exp(7^(1/2)*t)*(2*7^(1/2)
3))/2
(2*7^(1/2)
3)/(2*exp(7^(1/2)*t))+(7^(1/2)*exp(7^(1/2)*t)*(2*7^(1/2)
-3))/7+
(7^(1/2)*(2*7^(1/2)+3))/(7*exp(7^(1/2)*t))
(7^(1/2)*exp(7^(1/2)*t)*(2*7^(1/2)-3))/14+
(7^(1/2)*(2*7^(1/2)+3))/(14*exp(7^(1/2)*t))
,其中x(0)1,y(0)2
9.解微分方程dy
ytanxcosx的通解。
y=dsolve('
Dy+y*tanx=cosx'
(cosx-C11/exp(tanx*x))/tanx
10、求解方程组
x2yz7
xz3
x23y228
[x,y,z]=solve('
x+2*y-z=7'
x+z=3'
x^2+3*y^2=28'
y'
z'
15/4-37^(1/2)/4
37^(1/2)/4+15/4
37^(1/2)/4+5/4
5/4-37^(1/2)/4
z=
37^(1/2)/4-3/4
-37^(1/2)/4-3/4
实验报告给出详细的实验代码以及实验结果,必要时标注代码注释,并按照实验任务要求对结果进行分析。
实验四选择结构程序设计
1、掌握建立和执行M文件的方法。
2、掌握利用if语句实现选择结构的方法。
3、掌握利用switch语句实现多分支选择结构的方法。
4、掌握try语句的使用。
二、实验内容
1.求下列分段函数的值。
6,
且
x3
yx
5x
10,x2x3
x2
其他
要求:
用if
语句实现,分别输出x=,,,,,,
时的y值。
x的值从键盘输入。
请输入x的值:
-5
x=
-3
-3
1
2
3
5
2.输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。
其中90~100分
为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
(1)用switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出错
误信息。
(1)
请输入成绩:
61
grade=
rate=
54
E
78
(2)
103
成绩无效
3、建立5×
6矩阵,要求输出矩阵第n行元素。
当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
请输入行数n:
n=
356789
6
n=
468903
Indexexceedsmatrixdimensions.
实验五循环结构程序设计
1、掌握利用for语句实现循环结构的方法。
2、掌握利用while语句实现循环结构的方法。
3、熟悉利用向量运算来代替循环操作的方法。
1.根据
L
,求
的近似值。
当n分别取100、1000、
10000时,结果是多少
分别用循环结构和向量运算(使用sum函数)来实现。
请输入n值;
100
100
s=
1000
1000
10000
10000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 编程 实验 报告 doc