搜索
您的当前位置:首页正文

matlab作业第3章

来源:哗拓教育


3-1 编写程序,建立向量N=【1,2,3,4,5】,然后利用向量N产生下列向量:

(1) 2,4,6,8,10

>> N=[1,2,3,4,5];

>> 2*N

ans =

2 4 6 8 10

(2)1/2,1,3/2,2,5/2

>> 1/4*N

ans =

0.2500 0.5000 0.7500 (3)1,1/2,1/3,1/4,1/5

>> 1./N

ans =

1.0000 1.2500

1.0000 0.5000 0.3333 0.2500 0.2000

(4)1,1/4,1/9,1/16,1/25

>> 1./(N.*N)

ans =

1.0000 0.2500 0.1111 0.0625 0.0400

3-2 从键盘输入一个三位整数,将它反向输入。如输入639,输出936.

x=input('百位');

y=input('十位');

z=input('个位');

a=x*100+y*10+z

t=x;

x=z;

z=t;

a=x*100+y*10+z

>> f1

百位3

十位2

个位1

a =

321

a =

123

3-3输入一个百分制成绩,要求输出成绩等级A,B,C,D,E.其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下的为E。

A='A';

B='B';

C='C';

D='D';

E='E';

x=input('x=');

if x>=90

disp (A);

elseif x>=80

disp(B);

elseif x>=70

sisp(C);

elseif x>=60

disp(D);

elseif x<60

disp(E);

end

>> f1

x=92

A

>> f1

x=65

D

>> f1

x=32

E

3-6输入20个数,求其中最大数和最小数。要求分别用循环结构和调用Matlab的Max函数和min函数来实现。

B=input('input twenty numbers');

c=B(1);

d=B(1);

for i=1:20

c=max(c,B(i));

d=min(d,B(i));

end

disp (c)

disp (d)

>> f2

input twenty numbers[1 2 5 45 8 6 3 12 4 2 654 1 1 1 2 3 4 5 26 789]

789

1

e0.3ae0.3a0.3aysin(a0.3)ln22,当a取-3.0,-2.9,-2.8,……,2.8,2.9,3.03-7

时,求各点的函数值。要求分别用顺序结构和循环结构实现。

for i=-3.0:0.1:3.0

a=i

y=((exp(0.3*a)-exp(-0.3*a))/2)*(sin(a+0.3))+(log((0.3+a)/2))

end

>> f2

a =

-3

y =

0.7388 + 3.1416i

a =

-2.9000

y =

0.7696 + 3.1416i

a =

-2.8000

y =

0.7871 + 3.1416i

a =

-2.7000

y =

0.7913 + 3.1416i

a =

-2.6000

y =

0.7822 + 3.1416i

a =

-2.5000

y =

0.7602 + 3.1416i

a =

-2.4000

y =

0.7254 + 3.1416i

a =

-2.3000

y =

0.6784 + 3.1416i

a =

-2.2000

y =

0.6196 + 3.1416i

a =

-2.1000

y =

0.5496 + 3.1416i

a =

-2

y =

0.4688 + 3.1416i

a =

-1.9000

y =

0.3780 + 3.1416i

a =

-1.8000

y =

0.2775 + 3.1416i

a =

-1.7000

y =

0.1680 + 3.1416i

a =

-1.6000

y =

0.0497 + 3.1416i

a =

-1.5000

y =

-0.0771 + 3.1416i

a =

-1.4000

y =

-0.2124 + 3.1416i

a =

-1.3000

y =

-0.3566 + 3.1416i

a =

-1.2000

y =

-0.5104 + 3.1416i

a =

-1.1000

y =

-0.6752 + 3.1416i

a =

-1

y =

-0.8536 + 3.1416i

a =

-0.9000

y =

-1.0497 + 3.1416i

a =

-0.8000

y =

-1.2701 + 3.1416i

a =

-0.7000

y =

-1.5271 + 3.1416i

a =

-0.6000

y =

-1.8436 + 3.1416i

a =

-0.5000

y =

-2.2727 + 3.1416i

a =

-0.4000

y =

-2.9837 + 3.1416i

a =

-0.3000

y =

-37.0245

a =

-0.2000

y =

-3.0017

a =

-0.1000

y =

-2.3085

a =

0

y =

-1.8971

a =

0.1000

y =

-1.5978

a =

0.2000

y =

-1.3575

a =

0.3000

y =

-1.1531

a =

0.4000

y =

-0.9723

a =

0.5000

y =

-0.8083

a =

0.6000

y =

-0.6567

a =

0.7000

y =

-0.5151

a =

0.8000

y =

-0.3819

a =

0.9000

y =

-0.2561

a =

1

y =

-0.1374

a =

1.1000

y =

-0.0255

a =

1.2000

y =

0.0792

a =

1.3000

y =

0.1766

a =

1.4000

y =

0.2663

a =

1.5000

y =

0.3478

a =

1.6000

y =

0.4206

a =

1.7000

y =

0.4841

a =

1.8000

y =

0.5379

a =

1.9000

y =

0.5815

a =

2

y =

0.6145

a =

2.1000

y =

0.6366

a =

2.2000

y =

0.6474

a =

2.3000

y =

0.6470

a =

2.4000

y =

0.6351

a =

2.5000

y =

0.6119

a =

2.6000

y =

0.5777

a =

2.7000

y =

0.5327

a =

2.8000

y =

0.4774

a =

2.9000

y =

0.4126

a =

3

y =

0.3388

3-8 当n分别取100、1000、10000时,求下列各式的值:

111222123(1)

12n(2)6

n=input('n');

s=0;

for i=1:n

c=i+i;

d=1/c;

s=s+d;

end

disp (s)

>> f2

n100

2.5937

>> f2

n1000

3.7427

>> f2

n10000

4.8938

>>

11y1353-10根据

1,2n1求:

(1)y<3时的最大n值。

(2)与(1)的n值对应的y值。

y=0;

for i=1:(2*n-1)

a=1/i ;

y=y+a;

if y>=3

n=i-1

y=y-a

break

end

end

>> f2

n =

10

y =

2.9290

3-12 编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用该函数。

function c=cji(A,B)

c=A*B;

>> A=[2 3];

>> B=[2;3];

>> c=cji(A,B)

c =

13

function d=dji(A,B)

d=A.*B;

>> A=[1 2 3];

>> B=[1 2 3];

>> d=dji(A,B)

d =

1 4 9

因篇幅问题不能全部显示,请点此查看更多更全内容

Top