实验1Matlab基本操作M文件和流程控制语句答案.docx

上传人:wj 文档编号:1295590 上传时间:2023-04-30 格式:DOCX 页数:7 大小:11.40KB
下载 相关 举报
实验1Matlab基本操作M文件和流程控制语句答案.docx_第1页
第1页 / 共7页
实验1Matlab基本操作M文件和流程控制语句答案.docx_第2页
第2页 / 共7页
实验1Matlab基本操作M文件和流程控制语句答案.docx_第3页
第3页 / 共7页
实验1Matlab基本操作M文件和流程控制语句答案.docx_第4页
第4页 / 共7页
实验1Matlab基本操作M文件和流程控制语句答案.docx_第5页
第5页 / 共7页
实验1Matlab基本操作M文件和流程控制语句答案.docx_第6页
第6页 / 共7页
实验1Matlab基本操作M文件和流程控制语句答案.docx_第7页
第7页 / 共7页
亲,该文档总共7页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验1Matlab基本操作M文件和流程控制语句答案.docx

《实验1Matlab基本操作M文件和流程控制语句答案.docx》由会员分享,可在线阅读,更多相关《实验1Matlab基本操作M文件和流程控制语句答案.docx(7页珍藏版)》请在冰点文库上搜索。

实验1Matlab基本操作M文件和流程控制语句答案.docx

实验1Matlab基本操作、M文件和流程控制语句-答案

1、计算以下表达式的值,将结果按不同格式输出。

掌握format命令的使用方法。

(1)

(2),其中

(3),其中

(1)为例,其余类似。

(1)>>y=1.3^3*sin(pi/3)*sqrt(26)

y=

9.7017

>>formatlong

>>y=1.3^3*sin(pi/3)*sqrt(26)

y=

9.70168931166114

>>formatshorte

>>y=1.3^3*sin(pi/3)*sqrt(26)

y=

9.7017e+000

>>formatbank

>>y=1.3^3*sin(pi/3)*sqrt(26)

y=

9.70

>>formatrat

>>y=1.3^3*sin(pi/3)*sqrt(26)

y=

2862/295

(2)>>formatshort

>>x=[21+2*i;-0.455]

x=

2.00001.0000+2.0000i

-0.45005.0000

>>y=(1/2)*log(x+sqrt(1+x^2))

y=

0.7114-0.0253i0.8968+0.3658i

0.2139+0.9343i1.1541-0.0044i

(3)

>>formatshort

>>x=-3:

0.1:

3;

>>y=((exp(0.3*x)-exp(-0.3*x))/2).*sin(x+0.3)+log((0.3+x)/2)

2、已知:

求下列表达式的值:

A+6*B和A-B+I

A*B和A.*B

A^3和A.^3

A/B和B\A

[A,B]和[A([1,3],:

);B^2]

>>A=[1234-4;34787;3657];

>>B=[13-1;203;3-27];

>>A+6*B

ans=

1852-10

467105

215349

>>A-B+eye(3)

ans=

1231-3

32884

0671

>>A*B

ans=

684462

309-72596

154-5241

>>A.*B

ans=

121024

680261

9-13049

>>A^3

ans=

3722623382448604

247370149188600766

78688454142118820

>>A.^3

ans=

172839304-64

39304343658503

27274625343

>>A/B

ans=

16.4000-13.60007.6000

35.8000-76.200050.2000

67.0000-134.000068.0000

>>B\A

ans=

109.4000-131.2000322.8000

-53.000085.0000-171.0000

-61.600089.8000-186.2000

>>[A,B]

ans=

1234-413-1

34787203

36573-27

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

);B^2]

ans=

1234-4

3657

451

11019

20-540

3、已知,

(1)当时,求y的值。

(2)当时,求y的值。

(1)先创建文件函数:

f.m

functionf=f(n)

f=n+10*log(n^2+5);

然后在主窗口调用:

>>y=f(40)/(f(30)+f(20))

y=

0.6390

(2)先创建文件函数:

f.m

functionf=f(n)

f=0;

fori=1:

n

f=f+i*(i+1);

end

或用while语句创建函数:

functionf=f(n)

f=0;

whilen>=1

f=f+n*(n+1);

n=n-1;

end

然后在主窗口调用:

>>y=f(40)/(f(30)+f(20))

y=

1.7662

4、请分别用if和switch语句实现。

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

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

n=input('pleaseenterascores:

');

ifn>=90

disp('A')

elseifn>=80

disp('B')

elseifn>=70

disp('C')

elseifn>=60

disp('D')

else

disp('E')

end

用switch语句:

n=input('pleaseenterascores:

');

m=fix(n/10)

switchm

case10

disp('A')

case9

disp('A')

case8

disp('B')

case7

disp('C')

case6

disp('D')

otherwise

disp('E')

end

5、已知

求中:

这20个数中的最大值,最小值,这20个数的总和。

统计正数、零、负数的个数。

显示的值。

f1=1;

f2=0;

f3=1;

max=1;

min=0;

n=4;

positive=2;

negative=0;

zero=1;

sum=2;

s=[101];

whilen<=20

f=f3-2*f2+f1;

sum=sum+f;

iff>max

max=f;

elseiff

min=f;

end

iff>0

positive=positive+1;

elseiff<0

negative=negative+1;

else

zero=zero+1;

end

s=[sf];

f1=f2;

f2=f3;

f3=f;

n=n+1;

end

fprintf('themaxvalue=%f\ntheminvalue=%f\n',max,min);

fprintf('thesum=%f\n',sum);

fprintf('thenumberofpositive:

%f\n',positive);

fprintf('thenumberofnegative:

%f\n',negative);

fprintf('thenumberofzero:

%f\n',zero);

f=s

或:

f1=1;

f2=0;

f3=1;

max=1;

min=0;

n=4;

positive=2;

negative=0;

zero=1;

sum=2;

g

(1)=1;

g

(2)=0;

g(3)=1;

whilen<=20

f=f3-2*f2+f1;

g(n)=f

sum=sum+f;

iff>max

max=f;

elseiff

min=f;

end

iff>0

positive=positive+1;

elseiff<0

negative=negative+1;

else

zero=zero+1;

end

f1=f2;

f2=f3;

f3=f;

n=n+1;

end

fprintf('themaxvalue=%f\ntheminvalue=%f\n',max,min);

fprintf('thesum=%f\n',sum);

fprintf('thenumberofpositive:

%f\n',positive);

fprintf('thenumberofnegative:

%f\n',negative);

fprintf('thenumberofzero:

%f\n',zero);

f=g

结果:

themaxvalue=65.000000

theminvalue=-115.000000

thesum=-135.000000

thenumberofpositive:

9.000000

thenumberofnegative:

9.000000

thenumberofzero:

2.000000

f=

Columns1through10

10120-3-154-7

Columns11through20

-10821-5-39-86542-96-115

6、编写一个函数文件,输入3个参数,前2个为矩阵,第3个是数字0或1,如果是0,则计算矩阵乘积A*B,否则计算A.*B。

functionC=f(A,B)

A=input('EntermatrixA:

');

B=input('EntermatrixB:

');

k=input('Enter0or1please:

');

C=zeros(size(A,1),size(A,2));%此行语句可略掉

ifk==0

ifsize(A,2)==size(B,1)

C=A*B;

else

disp('A与B无法相乘')

end

else

ifsize(A)==size(B)

fori=1:

size(A,1)%返回A的行数

forj=1:

size(A,2)%返回A的列数

C(i,j)=A(i,j)*B(i,j);

end

end

else

disp('只有同型矩阵才能点乘')

end

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2