上机实验报告完整实验代码.docx

上传人:b****1 文档编号:23302108 上传时间:2023-05-16 格式:DOCX 页数:29 大小:104.52KB
下载 相关 举报
上机实验报告完整实验代码.docx_第1页
第1页 / 共29页
上机实验报告完整实验代码.docx_第2页
第2页 / 共29页
上机实验报告完整实验代码.docx_第3页
第3页 / 共29页
上机实验报告完整实验代码.docx_第4页
第4页 / 共29页
上机实验报告完整实验代码.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

上机实验报告完整实验代码.docx

《上机实验报告完整实验代码.docx》由会员分享,可在线阅读,更多相关《上机实验报告完整实验代码.docx(29页珍藏版)》请在冰豆网上搜索。

上机实验报告完整实验代码.docx

上机实验报告完整实验代码

《MATLAB程序设计与应用》

实验一matlab集成环境使用与运算基础

1,先求下列表达式的值,然后显示matlab工作空间的使用情况并保存全部变量。

(1)

程序:

.>>z1=2*sin(85*pi/180)/(1+exp

(2))

结果:

z1=

0.2375

(2)

程序:

>>x=[2,1+2*i;-0.45,5];

>>z2=0.5*log(x+sqrt(1+x*x))

结果:

z2=

0.7114-0.0253i0.8968+0.3658i

0.2139+0.9343i1.1541-0.0044i

(3)

提示:

利用冒号表达式生成a向量,求各点函数值时用点乘运算。

程序:

>>a=-3.0:

0.1:

30;

>>z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin((a+0.3)*pi/180)+log((0.3+a)/2)

结果:

z3=

1.0e+003*

Columns1through4

0.0003+0.0031i0.0003+0.0031i0.0003+0.0031i0.0002+0.0031i

Columns5through8

0.0002+0.0031i0.0001+0.0031i0.0001+0.0031i0.0000+0.0031i

Columns9through12

-0.0000+0.0031i-0.0001+0.0031i-0.0001+0.0031i-0.0002+0.0031i

Columns13through16

-0.0003+0.0031i-0.0003+0.0031i-0.0004+0.0031i-0.0005+0.0031i

Columns17through20

-0.0006+0.0031i-0.0007+0.0031i-0.0008+0.0031i-0.0009+0.0031i

Columns21through24

-0.0010+0.0031i-0.0012+0.0031i-0.0014+0.0031i-0.0016+0.0031i

Columns25through28

-0.0019+0.0031i-0.0023+0.0031i-0.0030+0.0031i-0.0370

Columns29through32

-0.0030-0.0023-0.0019-0.0016

Columns33through36

-0.0014-0.0012-0.0010-0.0009

Columns37through40

-0.0008-0.0007-0.0006-0.0005

Columns41through44

-0.0004-0.0003-0.0003-0.0002

Columns45through48

-0.0001-0.0001-0.00000.0000

Columns49through52

0.00010.00010.00020.0002

Columns53through56

0.00030.00030.00030.0004

Columns57through60

0.00040.00050.00050.0005

Columns61through64

0.00060.00060.00060.0007

Columns65through68

0.00070.00070.00080.0008

Columns69through72

0.00080.00080.00090.0009

Columns73through76

0.00090.00100.00100.0010

Columns77through80

0.00110.00110.00110.0011

Columns81through84

0.00120.00120.00120.0013

Columns85through88

0.00130.00130.00130.0014

Columns89through92

0.00140.00140.00150.0015

Columns93through96

0.00150.00160.00160.0016

Columns97through100

0.00170.00170.00170.0018

Columns101through104

0.00180.00180.00190.0019

Columns105through108

0.00200.00200.00200.0021

Columns109through112

0.00210.00220.00220.0023

Columns113through116

0.00230.00240.00240.0025

Columns117through120

0.00250.00260.00260.0027

Columns121through124

0.00270.00280.00290.0029

Columns125through128

0.00300.00310.00310.0032

Columns129through132

0.00330.00340.00340.0035

Columns133through136

0.00360.00370.00380.0039

Columns137through140

0.00400.00410.00420.0043

Columns141through144

0.00440.00450.00460.0047

Columns145through148

0.00490.00500.00510.0053

Columns149through152

0.00540.00560.00570.0059

Columns153through156

0.00600.00620.00640.0066

Columns157through160

0.00680.00690.00710.0074

Columns161through164

0.00760.00780.00800.0083

Columns165through168

0.00850.00880.00900.0093

Columns169through172

0.00960.00990.01020.0105

Columns173through176

0.01080.01120.01150.0119

Columns177through180

0.01230.01270.01310.0135

Columns181through184

0.01390.01440.01480.0153

Columns185through188

0.01580.01630.01680.0174

Columns189through192

0.01800.01850.01910.0198

Columns193through196

0.02040.02110.02180.0225

Columns197through200

0.02330.02410.02490.0257

Columns201through204

0.02650.02740.02840.0293

Columns205through208

0.03030.03130.03240.0335

Columns209through212

0.03460.03580.03700.0382

Columns213through216

0.03950.04090.04230.0437

Columns217through220

0.04520.04670.04830.0500

Columns221through224

0.05170.05340.05520.0571

Columns225through228

0.05910.06110.06320.0654

Columns229through232

0.06760.06990.07230.0748

Columns233through236

0.07730.08000.08270.0856

Columns237through240

0.08850.09150.09470.0979

Columns241through244

0.10130.10470.10830.1121

Columns245through248

0.11590.11990.12400.1282

Columns249through252

0.13260.13720.14190.1467

Columns253through256

0.15180.15700.16240.1679

Columns257through260

0.17370.17960.18580.1921

Columns261through264

0.19870.20550.21250.2198

Columns265through268

0.22730.23510.24310.2514

Columns269through272

0.26000.26890.27810.2876

Columns273through276

0.29740.30760.31800.3289

Columns277through280

0.34010.35170.36370.3761

Columns281through284

0.38890.40210.41580.4299

Columns285through288

0.44460.45970.47530.4915

Columns289through292

0.50820.52540.54330.5617

Columns293through296

0.58070.60040.62080.6418

Columns297through300

0.66360.68610.70930.7333

Columns301through304

0.75810.78380.81030.8377

Columns305through308

0.86600.89520.92540.9567

Columns309through312

0.98901.02231.05681.0924

Columns313through316

1.12921.16731.20661.2472

Columns317through320

1.28921.33261.37741.4237

Columns321through324

1.47151.52101.57211.6249

Columns325through328

1.67941.73571.79401.8541

Columns329through331

1.91631.98052.0468

(4)

提示:

用逻辑表达式求分段函数值。

程序:

>>t=0:

0.5:

2.5;

>>z1=(t>0&t<=1).*t.^2;

>>z2=(t>=1&t<2).*(t.^2-1);

>>z3=(t>=2&t<3).*(t.^2-2*t+1);

>>z=z1+z2+z3

z=

00.25001.00001.25001.00002.2500

2,已知

求下列表达式的值:

(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]

程序:

(1)

>>A=[12,34,-4;34,7,87;3,65,7];

>>B=[1,3,-1;2,0,3;3,-2,7];

>>I=eye(3);

>>D=A+6*B

结果:

D=

1852-10

467105

215349

程序:

>>D=A-B+I

结果:

D=

1231-3

32884

0671

(2)

程序:

>>D=A*B

结果:

D=

684462

309-72596

154-5241

程序:

>>D=A.*B

结果:

D=

121024

680261

9-13049

(3)

>>D=A^3

D=

3722623382448604

247370149188600766

78688454142118820

>>D=A.^3

D=

172839304-64

39304343658503

27274625343

(4)

>>D=A/B

D=

16.4000-13.60007.6000

35.8000-76.200050.2000

67.0000-134.000068.0000

>>D=B\A

D=

109.4000-131.2000322.8000

-53.000085.0000-171.0000

-61.600089.8000-186.2000

(4)

>>D=[A,B]

D=

1234-413-1

34787203

36573-27

>>D=[A([1,3],:

);B^2]

D=

1234-4

3657

451

11019

20-540

3,设有矩阵A和B

(1)求它们的乘积C;

(2)将矩阵C的右下角3*2子矩阵赋给D;

(3)察看matlab工作空间的使用情况。

程序:

(1)

>>A=[1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;16,17,18,19,20;21,22,23,24,25];

>>B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];

>>C=A*B

结果:

C=

9315077

258335237

423520397

588705557

753890717

(2)

>>D=C(3:

5,2:

3)

结果:

D=

520397

705557

890717

4,完成下列操作:

(1)求[100,999]之间能被21整除的数的个数。

提示:

先利用冒号表达式,再利用find和length函数。

(2)建立一个字符串向量,删除其中的大写字母。

提示:

利用find函数和空矩阵

程序:

(1)

>>A=100:

1:

999;

>>B=rem(A,21)==0;

>>C=find(B==1);

>>D=length(C)

结果:

D=

43

(2)

>>x=input('请输入字符串向量:

','s');

请输入字符串向量:

cToOmPpuIter

>>y=find(x>='A'&x<='Z');

>>x(y)=[];

>>x

x=

computer

实验二matlab矩阵分析与处理

1,设有分块矩阵

,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证

>>E=eye(3);

>>R=rand(3,2);

>>O=zeros(2,3);

>>S=diag(1:

2);

>>A=[E,R;O,S]

A=

1.0000000.95010.4860

01.000000.23110.8913

001.00000.60680.7621

0001.00000

00002.0000

>>A^2

ans=

1.0000001.90031.4579

01.000000.46232.6739

001.00001.21372.2863

0001.00000

00004.0000

2,建立一个5×5矩阵,求它的行列式的值、迹、秩和范数。

>>A=[-29,6,18;20,5,12;-8,8,5];

>>b=eig(A)

b=

-25.3169

-10.5182

16.8351

>>[v,b]=eig(A)

v=

0.71300.28030.2733

-0.6084-0.78670.8725

0.34870.55010.4050

b=

-25.316900

0-10.51820

0016.8351

3,下面是一个线性方程组:

(1)求方程的解;

(2)将方程右边向量元素b3改为0.53,再求解,并比较b3的变化和解的相对变化。

(1)

>>A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];

>>C=[0.95;0.67;0.52];

>>B=A\C

B=

1.2000

0.6000

0.6000

>>A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];C=[0.95;0.67;0.52]

C=

0.9500

0.6700

0.5200

(2)

>>A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];

>>C=[0.95;0.67;0.53];

>>B=A\C

B=

3.0000

-6.6000

6.6000

3,建立A矩阵,试比较sqrtm(A)和sqrt(A),分析它们的区别。

>>A=magic(3);

>>sqrtm(A)

ans=

2.7065+0.0601i0.0185+0.5347i1.1480-0.5948i

0.4703+0.0829i2.0288+0.7378i1.3739-0.8207i

0.6962-0.1430i1.8257-1.2725i1.3511+1.4155i

>>sqrt(A)

ans=

2.82841.00002.4495

1.73212.23612.6458

2.00003.00001.4142

区别:

sqrt是求矩阵里每个元素的平方根,并组成一个新的矩阵,而sqrtm是求矩阵的方根并组成一个新的矩阵。

实验三选择结构程序设计

1,求分段函数的值。

用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。

程序:

>>m=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];

forx=m

ifx<0&x~=-3

y1=x^2+x-6;

disp(['y=',num2str(y1)])

elseifx>=0&x<5&x~=2&x~=3

y2=x^2-5*x+6;

disp(['y=',num2str(y2)])

else

y3=x^2-x-1;

disp(['y=',num2str(y3)])

end

end

y=14

y=11

y=2

y=1

y=-0.25

y=5

y=19

2,输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。

其中90分~100分为A,80分~89分为B,70~79分为C,60~69分为D,60分以下为E。

要求:

(1)分别用if和swtich语句实现;

(2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出出错信息。

(1)if语句

程序:

>>x=input('请输入一个分数:

');

请输入一个分数:

90

>>ifx>=90

y='A';

elseifx>=80

y='B';

elseifx>=70

y='C';

elseifx>=60

y='D';

elsey='E';

end

>>y

y=

A

程序:

>>x=input('请输入一个分数:

');

请输入一个分数:

120

>>ifx>100|x<0

x=input('输入错误,请重新输入成绩:

');

end

输入错误,请重新输入成绩:

80

>>ifx>=90

y='A';

elseifx>=80

y='B';

elseifx>=70

y='C';

elseifx>=60

y='D';

elsey='E';

end

>>y

y=

B

(2)

>>x=input('请输入成绩:

');

请输入成绩:

102

>>while(x>100|x<0)

x=input('输入错误,输入错误请重新输入成绩');

end

输入错误,输入错误请重新输入成绩68

>>switchfix(x/10)

case{9,10}

y='A';

case{8}

y='B';

case{7}

y='C';

case{6}

y='D';

case{0,1,2,3,4,5}

y='E';

end

>>y

y=

D

4,建立5×6矩阵,要求输出矩阵

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机硬件及网络

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1