文档库 最新最全的文档下载
当前位置:文档库 › matlab基础与应用部分习题答案

matlab基础与应用部分习题答案

matlab基础与应用部分习题答案
matlab基础与应用部分习题答案

作业一

4、写出完成下列操作的命令。

(1)将矩阵A第2~5行中第1,3,5列元素赋给矩阵B。>> M=[0:1:48];

>> A=reshape(M,7,7)

A =

0 7 14 21 28 35 42

1 8 15 2

2 29 36 43

2 9 16 2

3 30 37 44

3 10 17 2

4 31 38 45

4 11 18 2

5 32 39 46

5 12 19 2

6 33 40 47

6 13 20 2

7 34 41 48

>> B=A(2:5,1:2:5)

B =

1 15 29

2 16 30

3 17 31

4 18 32

(2)删除矩阵A的第七行元素。

>> A(7,:)=[]

A =

0 7 14 21 28 35 42

1 8 15 2

2 29 36 43

2 9 16 2

3 30 37 44

3 10 17 2

4 31 38 45

4 11 18 2

5 32 39 46

5 12 19 2

6 33 40 4

7 (3)将矩阵A的每个元素值加30。

>> A=A+30

A =

30 37 44 51 58 65 72

31 38 45 52 59 66 73

32 39 46 53 60 67 74

33 40 47 54 61 68 75

34 41 48 55 62 69 76

35 42 49 56 63 70 77

(4求矩阵A的大小和维素。

sizeA = size(A)

dA = ndims(A)

sizeA =

6 7

dA =

2

(5)将向量t的0元素用机器零来代替。

>> t=[1 2 3 4 0 5];

t =

1 2 3 4 0 5

>> find(t==0)

ans =

5

>> t(5)=eps

t =

1.0000

2.0000

3.0000

4.0000 0.0000

5.0000

(6)将含有12个元素的向量x转换成3*4矩阵。

>> x=[0:11]

x =

0 1 2 3 4 5 6 7 8 9 10 11 >> y=reshape(x,3,4)

0 3 6 9

1 4 7 10

2 5 8 11

(7)求一个字符串的ASCII。

>> abs('a')

ans =

97

(8)求一个ASCII所对应的字符。

>> char(99)

ans =

c

5、已知A[97 67 34 10

-78 75 65 5

32 5 -23 -59

0 = -12 54 7]

写出完成下列操作的命令。

(1)取出A的前3列构成矩阵B,前两列构成矩阵C,右下角3*2子矩阵构成矩阵D,B与C的乘积构成矩阵E。

>> B=A(1:3,:)

B =

97 67 34 10

-78 75 65 5

32 5 -23 -59

>> C=A(:,1:2)

C =

97 67

-78 75

32 5

0 -12

>> D=A(2:4,3:4)

D =

65 5

-23 -59

54 7

>> E=B*C

E =

5271 11574

-11336 664

1978 3112

(2)输出【50,100】范围的全部元素。>> find(A>=50 & A<=100)

ans =

1

5

6

10

12

>> output = [A(1) A(5) A(6) A(10) A(12)]

output =

97 67 75 65 54

二、实验题

>> x = -74*pi/180;y=-27*pi/180;

sin((x*x+y*y))/(sqrt(tan((abs(x+y))))+pi) ans =

0.1987 - 0.1434i

>> a = -3.0:0.1:3.0,

exp(-0.3.*a).*sin(a+0.3)

>> x=[2 4;-0.45 5];

0.5*log(x+sqrt(1+x.*x))

ans =

0.7218 1.0474

-0.2180 1.1562

>> A = [3 54 2;34 -45 7;87 90 15],

B = [1 -2 67;2 8 74;9 3 0]

>> A*B

A.*B

ans =

129 432 4197

7 -407 -1052

402 591 12489

ans =

3 -108 134

68 -360 518

783 270 0

>> A^3

A.^3

>> A/B

B\A

>> [A,B]

[A([1,3],:);B^2]

>> a=1+2i,b=3+4i,c=exp(pi/6*i)

c+a*b/(a+b)

作业二

1、从键盘输入一个4位整数,按如下规则加密后输出。加密规则:

每位数字都加上7,然后用和除以10的余数取代该数字;然后将第1位数和第3位数交换,第2位数和第4位数交换。

M 文件名为:Untitled1.m

程序:x=input('输入一个四位整数:');

y=[fix(x/1000),mod(fix(x/100),10),mod(fix(x/10),10),mod(x,10)]

z=mod((y+7),10)

x=z(3)*1000+z(4)*100+z(1)*10+z(2)

结果:输入一个四位整数:1234

y =

1 2 3 4

z =

8 9 0 1

x =

189

2、硅谷公司员工的工资计算方法如下。

(1)工作时数超过120h者,超过部分加发15%。

(2)工作时数低于60h者,扣发700元。

(3)其余按每小时84元计发。

试编程按输入的工号和该号员工的工时数,计算应发工资。程序:gonghao=input('输入工号');

hour=input('输入工时');

every=84;

if hour>120

gongzi=every*120+1.15* every *(hour-120);

elseif hour<60

gongzi=every*hour-700;

else

gongzi=devery*hour;

end

format bank;

display([gonghao,gongzi])

(1)结果:输入工号12

输入工时130

ans =

12.00 11046.00

(2)结果:输入工号12

输入工时56

ans =

12.00 4004.00

(3)结果:输入工号12

输入工时80

ans =

12.00 6720.00

3、 根据n 2222211116321++++= π,求π的近似值。当n 分别取100、

1000、10000时,结果是多少?

要求:分别用循环结构和向量运算(使用sun 函数)来实现。

(1)程序:(循环结构):

n=input('input n:');

s=0;

for i=1:n

s=s+1/i^2;

pai= sqrt(s*6);

end

相关文档