最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

matlab习题二答案

IT圈 admin 25浏览 0评论

2024年5月30日发(作者:务清一)

习题二

1.选择题

(1)下列变量名中A是合法的。

A. char_1,i,j B. x*y,a.1 C. xy,a1234 D. end,lbcx

说明:end是关键字,变量名中不能有运算符、标点符号,可以有下划线。内置常量可以

作为变量名,但一般不提倡这样做。

(2)下列C是合法常量。

A. 3*e10 B. 1e500 C. -1.85e-56 D. 10-2

说明:10-2是表达式,1e500超过了realmax,3*e10也是表达式。

(3)x=uint8(2.3e10),则x所占的字节是D个。

A. 1 B. 2 C. 4

(4)已知x=0:10,则x有B个元素。

A. 10 B. 11 C. 9

(5)产生对角线上为全1其余为0的2行3列矩阵的命令是C。

A. ones(2,3) B. ones(3,2) C. eye(2,3)

D. 8

D. 12

D. eye(3,2)

1

(6)已知数组

a4

7

A. 所有元素

2

5

8

3

6

,则a(:,end)是指C 。

9

B. 第一行元素 C. 第三列元素 D. 第三行元素

1

(7)已知数组

a4

7

A. a变成行向量

C. a数组为3行2列

2

5

8

3

6

,则运行a(:,1)=[]命令后C。

9

B. a数组为2行2列

D. a数组中没有元素3

1

(8)已知数组

a4

7

2

5

8

3

6

,则运行mean(a)命令是B 。

9

B. 计算a每列的平均值

D. a数组增加一列平均值

A. 计算a每行的平均值

C. a数组增加一行平均值

(9)已知x为一个向量,计算ln(x)的MATLAB命令是计算B。

A. ln(x) B. log(x) C. Ln(x) D. lg10(x)

(10)当a=2.4,使用取整函数计算得出3,则该取整函数名为C。

A. fix B. round C. ceil D. floor

(11)已知a=0:4,b=1:5,下面的运算表达式出错的为D。

A. a+b B. a./b C. a'*b D. a*b

(12)命令day(now)是指C。

A. 按照日期字符串格式提取当前时间 B. 提取当前时间

C. 提取当前时间的日期 D. 按照日期字符串格式提取当前日期

(13)以下运算符中哪个的优先级最高B。

A. * B. ^ C. ~= D. |

(14)运行命令bitand(20,15)的结果是C。

A. 15 B. 20 C. 4 D. 5

bitand(20,15)

ans =

4

(15)使用检测函数isinteger(15)的结果是B。

A. 1 B. 0 C. false

isinteger(15)

ans =

0

(16)计算三个多项式s1、s2和s3的乘积,则算式为C。

A. conv(s1,s2,s3) B. s1*s2*s3 C. conv(conv(s1,s2),s3) D. conv(s1*s2*s3)

2.复数变量a=2+3i,b=3-4i,计算a+b,a-b,c=a*b,d=a/b,并计算变量c的实部、虚部、

模和相角。

a=2+3i;b=3-4i;

a+b

a-b

c=a*b

d=a/b

real(c)

imag(c)

abs(c)

angle(c)

ans =

5.0000 - 1.0000i

ans =

-1.0000 + 7.0000i

c =

18.0000 + 1.0000i

d =

-0.2400 + 0.6800i

ans =

18

ans =

1

ans =

18.0278

ans =

0.0555

3.用“from:step:to”方式和linspace函数分别得到从0~4π步长为0.4π的变量x1和从0~4

π分成10点的变量x2。

x1=0:0.4*pi:4*pi

D. true

x2=linspace(0,4*pi,10)

x1 =

Columns 1 through 10

0 1.2566 2.5133 3.7699 5.0265 6.2832

7.5398 8.7965 10.0531 11.3097

Column 11

12.5664

x2 =

0 1.3963 2.7925 4.1888 5.5851 6.9813

8.3776 9.7738 11.1701 12.5664

1

4.输入矩阵

a4

7

2

5

8

3

6

,使用全下标方式取出元素“3”,使用单下标方式取出元素

9

3

9

1

“8”,取出后两行子矩阵块,使用逻辑矩阵方式取出

7

a=[1 2 3;4 5 6;7 8 9]

a(1,3)

a(6)

a(2:3,:)

a([1,3],[1,3])

a =

1 2 3

4 5 6

7 8 9

ans =

3

ans =

8

ans =

4 5 6

7 8 9

ans =

1 3

7 9

5.输入a为3×3的魔方阵,b为3×3的单位阵,并将a、b小矩阵组成3×6的大矩阵c和

6×3的大矩阵d,将d矩阵的最后一行取出构成小矩阵e。

a=magic(3)

b=eye(3)

c=[a,b]

d=[a;b]

d(end,:)

a =

8 1 6

3 5 7

4 9 2

b =

1 0 0

0 1 0

0 0 1

c =

8 1 6 1 0 0

3 5 7 0 1 0

4 9 2 0 0 1

d =

8 1 6

3 5 7

4 9 2

1 0 0

0 1 0

0 0 1

ans =

0 0 1

1

6.将矩阵

a4

7

a=a'

flipud(a)

fliplr(a)

rot90(a)

diag(a)

triu(a)

tril(a)

a =

2

5

8

3

6

用flipud、fliplr、rot90、diag、triu和tril函数进行操作。

9

a=reshape(1:9,3,3);

1 2 3

4 5 6

7 8 9

ans =

7 8 9

4 5 6

1 2 3

ans =

3 2 1

6 5 4

9 8 7

ans =

3 6 9

2 5 8

1 4 7

ans =

1

5

9

ans =

1 2 3

0 5 6

0 0 9

ans =

1 0 0

4 5 0

7 8 9

1

7.求矩阵

5

a'

rank(a)

inv(a)

det(a)

a^3

ans =

3

的转置、秩、逆矩阵、矩阵的行列式值和矩阵的三次幂。

8

a=[1 3;5 8];

1 5

3 8

ans =

2

ans =

-1.1429 0.4286

0.7143 -0.1429

ans =

-7

ans =

151 264

440 767

8. 输入a=[1.6 -2.4 5.2 -0.2],分别使用数学函数ceil、fix、floor、round查看各种取整运算

的结果。

a=[1.6 -2.4 5.2 -0.2];

ceil(a)

fix(a)

floor(a)

round(a)

ans =

2 -2 6 0

ans =

1 -2 5 0

ans =

1 -3 5 -1

ans =

2 -2 5 0

2x

1

3x

2

x

3

2x

4

8

x

1

3x

2

x

4

6

9.求解方程组

x

1

x

2

x

3

8x

4

7

7xx2x2x5

234

1

A=[2 -3 1 2;1 3 0 1;1 -1 1 8;7 1 -2 2]

b=[8;6;7;5]

A =

2 -3 1 2

1 3 0 1

1 -1 1 8

7 1 -2 2

b =

8

6

7

5

解法一:

x=Ab

x =

2.5353

1.2033

6.8299

-0.1452

解法二:

x=inv(A)*b

x =

2.5353

1.2033

6.8299

-0.1452

解法三:Cram法则

D=det(A);

D1=det([b,A(:,2:4)]);

D2=det([A(:,1),b,A(:,3:4)]);

D3=det([A(:,1:2),b,A(:,4)]);

D4=det([A(:,1:3),b]);

x1=D1/D,x2=D2/D,x3=D3/D,x4=D4/D

x1 =

2.5353

x2 =

1.2033

x3 =

6.8299

x4 =

-0.1452

123



11

10.计算数组

A

456

B

22

789

33

A=reshape(1:9,3,3);A=A'

B=repmat([1;2;3],1,3)

A/B

AB

A.*B

A./B

A =

1 2 3

4 5 6

1

2

的左除、右除以及点乘和点除。

3

7 8 9

B =

1 1 1

2 2 2

3 3 3

Warning: Matrix is singular to working precision.

ans =

NaN NaN Inf

NaN NaN Inf

NaN NaN Inf

Warning: Matrix is close to singular or badly scaled.

Results may be inaccurate. RCOND = 1.541976e-018.

ans =

-0.3333 -0.3333 -0.3333

0.6667 0.6667 0.6667

0 0 0

ans =

1 2 3

8 10 12

21 24 27

ans =

1.0000 2.0000 3.0000

2.0000 2.5000 3.0000

2.3333 2.6667 3.0000

11.计算函数

f(t)10esin(4t

)

值,其中t的范围从0~20步长取0.2;f1(t)为f(t)≥0

的部分,计算f1(t)的值。

t=0:0.2:20;

f=10*exp(2*t)-sin(4*t)

f1=f(f>=0)

f =

1.0e+018 *

Columns 1 through 10

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 11 through 20

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 21 through 30

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 31 through 40

2t

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 41 through 50

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 51 through 60

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 61 through 70

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 71 through 80

0.0000 0.0000 0.0000 0.0000 0.0001 0.0001

0.0002 0.0002 0.0004 0.0005

Columns 81 through 90

0.0008 0.0012 0.0018 0.0026 0.0039 0.0058

0.0087 0.0130 0.0194 0.0289

Columns 91 through 100

0.0431 0.0643 0.0959 0.1431 0.2135 0.3186

0.4752 0.7090 1.0577 1.5778

Column 101

2.3539

f1 =

1.0e+018 *

Columns 1 through 10

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 11 through 20

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 21 through 30

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 31 through 40

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 41 through 50

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 51 through 60

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 61 through 70

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 71 through 80

0.0000 0.0000 0.0000 0.0000 0.0001 0.0001

0.0002 0.0002 0.0004 0.0005

Columns 81 through 90

0.0008 0.0012 0.0018 0.0026 0.0039 0.0058

0.0087 0.0130 0.0194 0.0289

Columns 91 through 100

0.0431 0.0643 0.0959 0.1431 0.2135 0.3186

0.4752 0.7090 1.0577 1.5778

Column 101

2.3539

1

12.创建三维数组a,第一页为

3

数组b为3行、2列、2页。

a=[1 2;3 4];

a(:,:,2)=[1 2;2 1];

a(:,:,3)=[1 2;2 2]

b=reshape(a,3,2,2)

a(:,:,1) =

1 2

3 4

a(:,:,2) =

1 2

2 1

a(:,:,3) =

1 2

2 2

b(:,:,1) =

1 4

3 1

2 2

b(:,:,2) =

2 2

1 2

1 2

2



1

,第二页为



4



2

2



1

,第三页为



1



2

2

,重排生成

2

13.计算x从0~20,y=sin(x)中,π<x<4π范围中,y>0的所有值。

x=0:20;

y=sin(x);

y=y((x>pi)&(x<4*pi)&(y>0))

y =

0.6570 0.9894 0.4121

1

14.输入数组

a4

7

疏矩阵,是否是字符型。

2

5

8

3

6

,使用数组信息获取函数得出行列数,元素个数,是否是稀

9

a=reshape(1:9,3,3);a=a'

size(a)

numel(a)

issparse(a)

ischar(a)

a =

1 2 3

4 5 6

7 8 9

ans =

3 3

ans =

9

ans =

0

ans =

0

从最后两条命令运行的结果可知,数组a既不是稀疏矩阵,也不是字符型。

15.两个多项式

a(x)5x4x3x2x1

b(x)3x1

,计算

4322

c(x)a(x)b(x)

,并计算c(x)的根。当x=2时,计算c(x)的值;将

b(x)/a(x)

进行部分分式

展开。

a=[5 4 3 2 1];

b=[3 0 1];

c=conv(a,b)

roots(c)

polyval(c,2)

[r,p,k]=residue(b,a)

c =

15 12 14 10 6 2 1

ans =

-0.5378 + 0.3583i

-0.5378 - 0.3583i

0.1378 + 0.6782i

0.1378 - 0.6782i

-0.0000 + 0.5774i

-0.0000 - 0.5774i

ans =

1677

r =

0.0631 - 0.0816i

0.0631 + 0.0816i

-0.0631 - 0.5639i

-0.0631 + 0.5639i

p =

0.1378 + 0.6782i

0.1378 - 0.6782i

-0.5378 + 0.3583i

-0.5378 - 0.3583i

k =

[]

16..x从0~20,计算多项式

y5x4x3x2x1

的值,并根据x和y进行二阶、

三阶和四阶拟合。

p=[5 4 3 2 1];

x=0:20;

px=polyval(p,x)

p2=polyfit(x,px,2)

p3=polyfit(x,px,3)

p4=polyfit(x,px,4)

px =

Columns 1 through 9

1 15 129 547 1593

3711 7465 13539 22737

Columns 10 through 18

35983 54321 78915 111049 152127

203673 267331 344865 438159

Columns 19 through 21

549217 680163 833241

p2 =

1.0e+004 *

0.3591 -3.7132 6.1463

p3 =

432

1.0e+004 *

0.0204 -0.2529 1.0645 -0.8305

p4 =

5.0000 4.0000 3.0000 2.0000 1.0000

17..求如下行列式的值。要求:通过构造三阶、四阶、五阶行列式计算其结果,观察其中规

律,写出n阶行列式的通式。

1

2

2

2

2

2

2

2

2

2

n1

2

2

2

2

n

解:记行列式对应的矩阵为A,则A可以写成如下的形式:

A=tril(2*ones(n))+triu(-2*ones(n))+diag(1:n)

于是我们可以构造如下的三阶、四阶、五阶矩阵及其行列式如下:

A3=tril(2*ones(3))+triu(-2*ones(3))+diag(1:3)

det(A3)

A4=tril(2*ones(4))+triu(-2*ones(4))+diag(1:4)

det(A4)

A5=tril(2*ones(5))+triu(-2*ones(5))+diag(1:5)

det(A5)

A3 =

1 -2 -2

2 2 -2

2 2 3

ans =

30

A4 =

1 -2 -2 -2

2 2 -2 -2

2 2 3 -2

2 2 2 4

ans =

180

A5 =

1 -2 -2 -2 -2

2 2 -2 -2 -2

2 2 3 -2 -2

2 2 2 4 -2

2 2 2 2 5

ans =

1260

根据A3=30、A4=180、A5=1260可以归纳推理得到

A

n

(n2)!

18.根据线性代数方法,求一个正交变换将二次型

f2x

1

3x

2

3x

3

4x

2

x

3

化为标准

型。要求:不准使用MATLAB自带的函数,而应该通过求二次型系数矩阵特征值及其特征向

222

量并正交化的方法求出正交矩阵。

解:将二次型写为矩阵形式

200



x

1

f

x

1

x

2

x

3

032





x

T

T

2

xAx

,其中

x

x

1

023

x

3

矩阵A的特征多项式为

p=poly(A)

p =

1.0000 -15.0000 -18.0000 -0.0000

多项式p的根即为A的特征值:

v=roots(p)

v =

16.1168

-1.1168

-0.0000

分别求各个特征值对应的特征向量:

V1=v(1)*eye(3)-A;

p1=null(V1)

p1 =

-0.2320

-0.5253

-0.8187

V2=v(2)*eye(3)-A;

p2=null(V2)

p2 =

0.7858

0.0868

-0.6123

V3=v(3)*eye(3)-A;

p3=null(V3)

p3 =

-0.4082

2

x

2

x

A

3

0

0

00

32

23

0.8165

-0.4082

因此变换矩阵为

P=[p1,p2,p3]

P =

-0.2320 0.7858 -0.4082

-0.5253 0.0868 0.8165

-0.8187 -0.6123 -0.4082

P^(-1)*A*P

ans =

16.1168 0.0000 0.0000

0.0000 -1.1168 0.0000

0.0000 -0.0000 -0.0000

下面用MATLAB自带的函数进行检验:

[V,D]=eig(A)

V =

-0.2320 -0.7858 0.4082

-0.5253 -0.0868 -0.8165

-0.8187 0.6123 0.4082

D =

16.1168 0 0

0 -1.1168 0

0 0 -0.0000

因此二次型的标准型为

f16.1168y

1

1.1168y

2

22

2024年5月30日发(作者:务清一)

习题二

1.选择题

(1)下列变量名中A是合法的。

A. char_1,i,j B. x*y,a.1 C. xy,a1234 D. end,lbcx

说明:end是关键字,变量名中不能有运算符、标点符号,可以有下划线。内置常量可以

作为变量名,但一般不提倡这样做。

(2)下列C是合法常量。

A. 3*e10 B. 1e500 C. -1.85e-56 D. 10-2

说明:10-2是表达式,1e500超过了realmax,3*e10也是表达式。

(3)x=uint8(2.3e10),则x所占的字节是D个。

A. 1 B. 2 C. 4

(4)已知x=0:10,则x有B个元素。

A. 10 B. 11 C. 9

(5)产生对角线上为全1其余为0的2行3列矩阵的命令是C。

A. ones(2,3) B. ones(3,2) C. eye(2,3)

D. 8

D. 12

D. eye(3,2)

1

(6)已知数组

a4

7

A. 所有元素

2

5

8

3

6

,则a(:,end)是指C 。

9

B. 第一行元素 C. 第三列元素 D. 第三行元素

1

(7)已知数组

a4

7

A. a变成行向量

C. a数组为3行2列

2

5

8

3

6

,则运行a(:,1)=[]命令后C。

9

B. a数组为2行2列

D. a数组中没有元素3

1

(8)已知数组

a4

7

2

5

8

3

6

,则运行mean(a)命令是B 。

9

B. 计算a每列的平均值

D. a数组增加一列平均值

A. 计算a每行的平均值

C. a数组增加一行平均值

(9)已知x为一个向量,计算ln(x)的MATLAB命令是计算B。

A. ln(x) B. log(x) C. Ln(x) D. lg10(x)

(10)当a=2.4,使用取整函数计算得出3,则该取整函数名为C。

A. fix B. round C. ceil D. floor

(11)已知a=0:4,b=1:5,下面的运算表达式出错的为D。

A. a+b B. a./b C. a'*b D. a*b

(12)命令day(now)是指C。

A. 按照日期字符串格式提取当前时间 B. 提取当前时间

C. 提取当前时间的日期 D. 按照日期字符串格式提取当前日期

(13)以下运算符中哪个的优先级最高B。

A. * B. ^ C. ~= D. |

(14)运行命令bitand(20,15)的结果是C。

A. 15 B. 20 C. 4 D. 5

bitand(20,15)

ans =

4

(15)使用检测函数isinteger(15)的结果是B。

A. 1 B. 0 C. false

isinteger(15)

ans =

0

(16)计算三个多项式s1、s2和s3的乘积,则算式为C。

A. conv(s1,s2,s3) B. s1*s2*s3 C. conv(conv(s1,s2),s3) D. conv(s1*s2*s3)

2.复数变量a=2+3i,b=3-4i,计算a+b,a-b,c=a*b,d=a/b,并计算变量c的实部、虚部、

模和相角。

a=2+3i;b=3-4i;

a+b

a-b

c=a*b

d=a/b

real(c)

imag(c)

abs(c)

angle(c)

ans =

5.0000 - 1.0000i

ans =

-1.0000 + 7.0000i

c =

18.0000 + 1.0000i

d =

-0.2400 + 0.6800i

ans =

18

ans =

1

ans =

18.0278

ans =

0.0555

3.用“from:step:to”方式和linspace函数分别得到从0~4π步长为0.4π的变量x1和从0~4

π分成10点的变量x2。

x1=0:0.4*pi:4*pi

D. true

x2=linspace(0,4*pi,10)

x1 =

Columns 1 through 10

0 1.2566 2.5133 3.7699 5.0265 6.2832

7.5398 8.7965 10.0531 11.3097

Column 11

12.5664

x2 =

0 1.3963 2.7925 4.1888 5.5851 6.9813

8.3776 9.7738 11.1701 12.5664

1

4.输入矩阵

a4

7

2

5

8

3

6

,使用全下标方式取出元素“3”,使用单下标方式取出元素

9

3

9

1

“8”,取出后两行子矩阵块,使用逻辑矩阵方式取出

7

a=[1 2 3;4 5 6;7 8 9]

a(1,3)

a(6)

a(2:3,:)

a([1,3],[1,3])

a =

1 2 3

4 5 6

7 8 9

ans =

3

ans =

8

ans =

4 5 6

7 8 9

ans =

1 3

7 9

5.输入a为3×3的魔方阵,b为3×3的单位阵,并将a、b小矩阵组成3×6的大矩阵c和

6×3的大矩阵d,将d矩阵的最后一行取出构成小矩阵e。

a=magic(3)

b=eye(3)

c=[a,b]

d=[a;b]

d(end,:)

a =

8 1 6

3 5 7

4 9 2

b =

1 0 0

0 1 0

0 0 1

c =

8 1 6 1 0 0

3 5 7 0 1 0

4 9 2 0 0 1

d =

8 1 6

3 5 7

4 9 2

1 0 0

0 1 0

0 0 1

ans =

0 0 1

1

6.将矩阵

a4

7

a=a'

flipud(a)

fliplr(a)

rot90(a)

diag(a)

triu(a)

tril(a)

a =

2

5

8

3

6

用flipud、fliplr、rot90、diag、triu和tril函数进行操作。

9

a=reshape(1:9,3,3);

1 2 3

4 5 6

7 8 9

ans =

7 8 9

4 5 6

1 2 3

ans =

3 2 1

6 5 4

9 8 7

ans =

3 6 9

2 5 8

1 4 7

ans =

1

5

9

ans =

1 2 3

0 5 6

0 0 9

ans =

1 0 0

4 5 0

7 8 9

1

7.求矩阵

5

a'

rank(a)

inv(a)

det(a)

a^3

ans =

3

的转置、秩、逆矩阵、矩阵的行列式值和矩阵的三次幂。

8

a=[1 3;5 8];

1 5

3 8

ans =

2

ans =

-1.1429 0.4286

0.7143 -0.1429

ans =

-7

ans =

151 264

440 767

8. 输入a=[1.6 -2.4 5.2 -0.2],分别使用数学函数ceil、fix、floor、round查看各种取整运算

的结果。

a=[1.6 -2.4 5.2 -0.2];

ceil(a)

fix(a)

floor(a)

round(a)

ans =

2 -2 6 0

ans =

1 -2 5 0

ans =

1 -3 5 -1

ans =

2 -2 5 0

2x

1

3x

2

x

3

2x

4

8

x

1

3x

2

x

4

6

9.求解方程组

x

1

x

2

x

3

8x

4

7

7xx2x2x5

234

1

A=[2 -3 1 2;1 3 0 1;1 -1 1 8;7 1 -2 2]

b=[8;6;7;5]

A =

2 -3 1 2

1 3 0 1

1 -1 1 8

7 1 -2 2

b =

8

6

7

5

解法一:

x=Ab

x =

2.5353

1.2033

6.8299

-0.1452

解法二:

x=inv(A)*b

x =

2.5353

1.2033

6.8299

-0.1452

解法三:Cram法则

D=det(A);

D1=det([b,A(:,2:4)]);

D2=det([A(:,1),b,A(:,3:4)]);

D3=det([A(:,1:2),b,A(:,4)]);

D4=det([A(:,1:3),b]);

x1=D1/D,x2=D2/D,x3=D3/D,x4=D4/D

x1 =

2.5353

x2 =

1.2033

x3 =

6.8299

x4 =

-0.1452

123



11

10.计算数组

A

456

B

22

789

33

A=reshape(1:9,3,3);A=A'

B=repmat([1;2;3],1,3)

A/B

AB

A.*B

A./B

A =

1 2 3

4 5 6

1

2

的左除、右除以及点乘和点除。

3

7 8 9

B =

1 1 1

2 2 2

3 3 3

Warning: Matrix is singular to working precision.

ans =

NaN NaN Inf

NaN NaN Inf

NaN NaN Inf

Warning: Matrix is close to singular or badly scaled.

Results may be inaccurate. RCOND = 1.541976e-018.

ans =

-0.3333 -0.3333 -0.3333

0.6667 0.6667 0.6667

0 0 0

ans =

1 2 3

8 10 12

21 24 27

ans =

1.0000 2.0000 3.0000

2.0000 2.5000 3.0000

2.3333 2.6667 3.0000

11.计算函数

f(t)10esin(4t

)

值,其中t的范围从0~20步长取0.2;f1(t)为f(t)≥0

的部分,计算f1(t)的值。

t=0:0.2:20;

f=10*exp(2*t)-sin(4*t)

f1=f(f>=0)

f =

1.0e+018 *

Columns 1 through 10

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 11 through 20

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 21 through 30

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 31 through 40

2t

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 41 through 50

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 51 through 60

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 61 through 70

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 71 through 80

0.0000 0.0000 0.0000 0.0000 0.0001 0.0001

0.0002 0.0002 0.0004 0.0005

Columns 81 through 90

0.0008 0.0012 0.0018 0.0026 0.0039 0.0058

0.0087 0.0130 0.0194 0.0289

Columns 91 through 100

0.0431 0.0643 0.0959 0.1431 0.2135 0.3186

0.4752 0.7090 1.0577 1.5778

Column 101

2.3539

f1 =

1.0e+018 *

Columns 1 through 10

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 11 through 20

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 21 through 30

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 31 through 40

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 41 through 50

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 51 through 60

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 61 through 70

0.0000 0.0000 0.0000 0.0000 0.0000 0.0000

0.0000 0.0000 0.0000 0.0000

Columns 71 through 80

0.0000 0.0000 0.0000 0.0000 0.0001 0.0001

0.0002 0.0002 0.0004 0.0005

Columns 81 through 90

0.0008 0.0012 0.0018 0.0026 0.0039 0.0058

0.0087 0.0130 0.0194 0.0289

Columns 91 through 100

0.0431 0.0643 0.0959 0.1431 0.2135 0.3186

0.4752 0.7090 1.0577 1.5778

Column 101

2.3539

1

12.创建三维数组a,第一页为

3

数组b为3行、2列、2页。

a=[1 2;3 4];

a(:,:,2)=[1 2;2 1];

a(:,:,3)=[1 2;2 2]

b=reshape(a,3,2,2)

a(:,:,1) =

1 2

3 4

a(:,:,2) =

1 2

2 1

a(:,:,3) =

1 2

2 2

b(:,:,1) =

1 4

3 1

2 2

b(:,:,2) =

2 2

1 2

1 2

2



1

,第二页为



4



2

2



1

,第三页为



1



2

2

,重排生成

2

13.计算x从0~20,y=sin(x)中,π<x<4π范围中,y>0的所有值。

x=0:20;

y=sin(x);

y=y((x>pi)&(x<4*pi)&(y>0))

y =

0.6570 0.9894 0.4121

1

14.输入数组

a4

7

疏矩阵,是否是字符型。

2

5

8

3

6

,使用数组信息获取函数得出行列数,元素个数,是否是稀

9

a=reshape(1:9,3,3);a=a'

size(a)

numel(a)

issparse(a)

ischar(a)

a =

1 2 3

4 5 6

7 8 9

ans =

3 3

ans =

9

ans =

0

ans =

0

从最后两条命令运行的结果可知,数组a既不是稀疏矩阵,也不是字符型。

15.两个多项式

a(x)5x4x3x2x1

b(x)3x1

,计算

4322

c(x)a(x)b(x)

,并计算c(x)的根。当x=2时,计算c(x)的值;将

b(x)/a(x)

进行部分分式

展开。

a=[5 4 3 2 1];

b=[3 0 1];

c=conv(a,b)

roots(c)

polyval(c,2)

[r,p,k]=residue(b,a)

c =

15 12 14 10 6 2 1

ans =

-0.5378 + 0.3583i

-0.5378 - 0.3583i

0.1378 + 0.6782i

0.1378 - 0.6782i

-0.0000 + 0.5774i

-0.0000 - 0.5774i

ans =

1677

r =

0.0631 - 0.0816i

0.0631 + 0.0816i

-0.0631 - 0.5639i

-0.0631 + 0.5639i

p =

0.1378 + 0.6782i

0.1378 - 0.6782i

-0.5378 + 0.3583i

-0.5378 - 0.3583i

k =

[]

16..x从0~20,计算多项式

y5x4x3x2x1

的值,并根据x和y进行二阶、

三阶和四阶拟合。

p=[5 4 3 2 1];

x=0:20;

px=polyval(p,x)

p2=polyfit(x,px,2)

p3=polyfit(x,px,3)

p4=polyfit(x,px,4)

px =

Columns 1 through 9

1 15 129 547 1593

3711 7465 13539 22737

Columns 10 through 18

35983 54321 78915 111049 152127

203673 267331 344865 438159

Columns 19 through 21

549217 680163 833241

p2 =

1.0e+004 *

0.3591 -3.7132 6.1463

p3 =

432

1.0e+004 *

0.0204 -0.2529 1.0645 -0.8305

p4 =

5.0000 4.0000 3.0000 2.0000 1.0000

17..求如下行列式的值。要求:通过构造三阶、四阶、五阶行列式计算其结果,观察其中规

律,写出n阶行列式的通式。

1

2

2

2

2

2

2

2

2

2

n1

2

2

2

2

n

解:记行列式对应的矩阵为A,则A可以写成如下的形式:

A=tril(2*ones(n))+triu(-2*ones(n))+diag(1:n)

于是我们可以构造如下的三阶、四阶、五阶矩阵及其行列式如下:

A3=tril(2*ones(3))+triu(-2*ones(3))+diag(1:3)

det(A3)

A4=tril(2*ones(4))+triu(-2*ones(4))+diag(1:4)

det(A4)

A5=tril(2*ones(5))+triu(-2*ones(5))+diag(1:5)

det(A5)

A3 =

1 -2 -2

2 2 -2

2 2 3

ans =

30

A4 =

1 -2 -2 -2

2 2 -2 -2

2 2 3 -2

2 2 2 4

ans =

180

A5 =

1 -2 -2 -2 -2

2 2 -2 -2 -2

2 2 3 -2 -2

2 2 2 4 -2

2 2 2 2 5

ans =

1260

根据A3=30、A4=180、A5=1260可以归纳推理得到

A

n

(n2)!

18.根据线性代数方法,求一个正交变换将二次型

f2x

1

3x

2

3x

3

4x

2

x

3

化为标准

型。要求:不准使用MATLAB自带的函数,而应该通过求二次型系数矩阵特征值及其特征向

222

量并正交化的方法求出正交矩阵。

解:将二次型写为矩阵形式

200



x

1

f

x

1

x

2

x

3

032





x

T

T

2

xAx

,其中

x

x

1

023

x

3

矩阵A的特征多项式为

p=poly(A)

p =

1.0000 -15.0000 -18.0000 -0.0000

多项式p的根即为A的特征值:

v=roots(p)

v =

16.1168

-1.1168

-0.0000

分别求各个特征值对应的特征向量:

V1=v(1)*eye(3)-A;

p1=null(V1)

p1 =

-0.2320

-0.5253

-0.8187

V2=v(2)*eye(3)-A;

p2=null(V2)

p2 =

0.7858

0.0868

-0.6123

V3=v(3)*eye(3)-A;

p3=null(V3)

p3 =

-0.4082

2

x

2

x

A

3

0

0

00

32

23

0.8165

-0.4082

因此变换矩阵为

P=[p1,p2,p3]

P =

-0.2320 0.7858 -0.4082

-0.5253 0.0868 0.8165

-0.8187 -0.6123 -0.4082

P^(-1)*A*P

ans =

16.1168 0.0000 0.0000

0.0000 -1.1168 0.0000

0.0000 -0.0000 -0.0000

下面用MATLAB自带的函数进行检验:

[V,D]=eig(A)

V =

-0.2320 -0.7858 0.4082

-0.5253 -0.0868 -0.8165

-0.8187 0.6123 0.4082

D =

16.1168 0 0

0 -1.1168 0

0 0 -0.0000

因此二次型的标准型为

f16.1168y

1

1.1168y

2

22

发布评论

评论列表 (0)

  1. 暂无评论