MATLAB的一些解答.docx

上传人:b****6 文档编号:6566950 上传时间:2023-01-08 格式:DOCX 页数:39 大小:479.12KB
下载 相关 举报
MATLAB的一些解答.docx_第1页
第1页 / 共39页
MATLAB的一些解答.docx_第2页
第2页 / 共39页
MATLAB的一些解答.docx_第3页
第3页 / 共39页
MATLAB的一些解答.docx_第4页
第4页 / 共39页
MATLAB的一些解答.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

MATLAB的一些解答.docx

《MATLAB的一些解答.docx》由会员分享,可在线阅读,更多相关《MATLAB的一些解答.docx(39页珍藏版)》请在冰豆网上搜索。

MATLAB的一些解答.docx

MATLAB的一些解答

MATLAB系统环境

1.与其他的高级语言相比,MATLAB有哪些显著的特点?

答:

MATLAB的显著特点是功能强、效率高、简单易学。

2.怎么理解MATLAB的开发性?

试结合自己的专业领域,为MATLAB设计一个工具箱。

例如一个桥梁专家为MATLAB设计一个桥梁工具箱。

答:

目前MATLAB不仅仅是一个“矩阵实验室”了,它已成为一种广泛应用于工程计算及数值分析领域的新型高级语言。

MATLAB的功能强大、简单易学、编程效率高,因而深受广大科技工作者的欢迎,在欧美各高等院校,MATLAB已成为线性代数、自动控制理论、数字信号理论、时间序列分析、动态系统仿真、图像处理等课程的基本教学工具;成为理工科本科生、硕士生以及博士生必须掌握的基本编程语言。

在科研和工业生产领域,MATLAB已被广泛用于研究和解决各种具体的工程问题,近年来MATLAB在我国也开始流行,应用MATLAB的单位和个人急剧增加。

可以预见MATLAB将在我国科学研究和工程应用中发挥越来越大的作用。

3.当正常安装好MATLAB后,误把Window95子目录删除。

是否重新再安装MATLAB?

答:

是应重新安装MATLAB。

4.试将MATLAB系统的用户界面、操作方式与其他Windows95应用程序做一对比,有哪些共同规律?

答:

MATLAB系统的用户界面使可视化的,是以编写程序的,并且操作方式是界面化,可以用菜单操作。

5.先建立自己的工作目录,在分别用psth命令和路径浏览器将自己的工作目录设置到MATLAB搜索路径下。

用HELP命令查询到自己的工作目录吗?

答:

可以查询出自己新建的工作目录使用PASH命令可以把用户目录临时纳入MATLAB系统统一管理;用路径浏览器设置搜索,MATLAB路径浏览器可用来设置当前目录和永久性改变搜索路径,第一路径浏览器启动,第二 路径浏览器操作。

6.查看MATLAB的目录结构,并检查自己的机器上安装了那些工具箱?

答:

功能性工具箱、控制系统工具箱、信号处理工具箱、神经网络工具箱、最优化工具箱金融工具箱、统计学工具箱。

7.利用MATLAB的帮助功能分别查询INV函数、PLOT函数以及MATLAB操作系统命令的功能及用法?

答:

inv函数使用来求矩阵逆的函数,A矩阵必须是一个方阵,inv(A)

  plot是一个绘图函数用于画一维的图形

8.Root函数可以用于求多项式的根,先用HELP命令查看该函数的用法,然后利用该函数求

的全部根。

答:

次方程的系数矩阵为:

A=[1709-20]

            roots(A)

ans=-7.2254e+000

  -4.2861e-001+1.5405e+000i

  -4.2861e-001-1.5405e+000i

    1.0826e+000

该方程的的根有四个。

 

            MATLAB数据及其运算

1、如何理解“矩阵是MATLAB最基本的数据对象”?

答:

MATLAB是由早期专门用于矩阵运算的软件发展而来,MATLAB的大部分运算或命令都是在矩阵运算意义下执行的,而且这种运算定义在复数域上,正因为如此,MATLAB的矩阵运算功能非常丰富,体现出比其他高级语言高的多的编程效率。

许多含有矩阵运算的复杂计算问题,在MATLAB中很容易解决,因为向量可以看作是仅有一行或一列的矩阵,单个元素可以看作是仅含有一个元素的矩阵,故向量和单个数据可以看作特殊矩阵来处理。

2、设A和B是两个同维同大小的矩阵,问:

(1)、A*B和A.*B的值是否相等?

答:

如果A、B是同维的一维矩阵,那么A*B和A.*B的值相等,但是除了一维矩阵,其他的不相等。

(2)、A./B和B.\A的值是否相等?

答:

相等。

(3)、A/B和B\A的相等吗?

答:

相等。

(4)、A/B和B\A所代表的数学含义是什么?

答:

A/B代表的是A除以B,B\A代表的是A除以B。

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

(1)、建立三阶单位矩阵A

答:

A=ones(3)

A=

111

111

111

(2)、建立5*6随机矩阵A,其元素为[100,200]范围内的随机数。

答:

A=rand(5,6)*101+100

A=

1.1283e+0021.5524e+0021.9667e+0021.9249e+0021.8576e+0021.3961e+002

1.9225e+0021.9671e+0021.4902e+0021.8001e+0021.9433e+0021.6620e+002

1.6387e+0021.9745e+0021.8083e+0021.9691e+0021.6855e+0021.1729e+002

1.0985e+0021.1592e+0021.1433e+0021.6623e+0021.7653e+0021.7131e+002

1.2813e+0021.9803e+0021.4260e+0021.0361e+0021.7506e+0021.0322e+002

(3)、将矩阵A第2-5行中第1,3,5列元素赋给矩阵B

答:

B=(A(2:

5,[135]))

B=

1.9225e+0021.4902e+0021.9433e+002

1.6387e+0021.8083e+0021.6855e+002

1.0985e+0021.1433e+0021.7653e+002

1.2813e+0021.4260e+0021.7506e+002

(4)、删除矩阵A的第七号元素

答:

A(7)=[]

A=

Columns1through6

1.9148e+0021.1283e+0021.9225e+0021.6387e+0021.0985e+0021.2813e+002

Columns7through12

1.9671e+0021.9745e+0021.1592e+0021.9803e+0021.9667e+0021.4902e+002

Columns13through18

1.8083e+0021.1433e+0021.4260e+0021.9249e+0021.8001e+0021.9691e+002

Columns19through24

1.6623e+0021.0361e+0021.8576e+0021.9433e+0021.6855e+0021.7653e+002

Columns25through29

1.7506e+0021.3961e+0021.6620e+0021.1729e+0021.7131e+002

(5)、将矩阵A的每个元素值加30

答:

A+30

ans=

1.3322e+0022.0018e+0021.6854e+0021.7500e+0021.9865e+0022.2693e+002

1.5797e+0021.6203e+0022.0732e+0021.9528e+0021.9616e+0021.6438e+002

1.3466e+0022.2597e+0022.1032e+0022.0165e+0021.4642e+0021.8911e+002

1.3981e+0021.3348e+0021.4887e+0022.0622e+0021.4202e+0021.5261e+002

2.1317e+0021.7431e+0021.7947e+0021.5788e+0021.8033e+0022.0588e+002

(6)、求矩阵A的大小和维数

答:

size(A)

ans=

56

(7)、将向量I的0元素用机器0来代替

(8)、将含有12个元素的向量X转换成3*4矩阵

答:

X=[123456789101112];

[X(1,1:

4);X(1,5:

8);X(1,9:

12)]

ans=

1234

5678

9101112

(9)、求一个字符串的ASCII码

答:

abs('a')

ans=

97

(10)、求一个ASCII码所对应的字符

答:

char(112)

ans=

p

4、当X=[-5,7,15,3],y=[3,-4,5,0]时,是分析rem(X,y)和mod(X,y)的执行结果。

答:

X=[-57153];

y=[3-450];

rem(X,y)

ans=

-230NaN

mod(X,y)

ans=

1-103

5、下列命令执行后L1,L2,L3,L4的值分别是多少?

A=1:

9;B=10-A

L1=A==B;

L2=A〈=5;

L3=A〉3&A〈7;

L4=find(A>3&A<7);

答:

A=1:

9;

B=10-A;

L1=A==B

L1=

000010000

L2=A<=5

L2=

111110000

L3=A>3&A<7

L3=

000111000

L4=find(A>3&A<7)

L4=

456

6、当A=[34NANINF—INF–PIeps0]时,分析下列函数的执行结果:

all(A),any(A),isnan(A),isinf(A),isfinite(A).

答:

A=[34NaNinf-inf-pieps0];

>>all(A)

ans=

0

>>any(A)

ans=

1

>>isnan(A)

ans=

0100000

>>isinf(A)

ans=

0011000

>>isfinite(A)

ans=

1000111

7、用结构矩阵存储5名学生的基本情况数据,每名学生的数据包括学号、姓名、专业、和6门课程的成绩。

答:

b={1,'wang','huaxue',[786789769789];2,'zhang','shuxue',[566792769789];3,'ren','wili',[786789769789];4,'chen','yuwen',[786789769789];5,'shengwu','sheng',[786789769789];6,'liu','yingyu',[786789769789]}

b=

[1]'wang''huaxue'[1x6double]

[2]'zhang''shuxue'[1x6double]

[3]'ren''wili'[1x6double]

[4]'chen''yuwen'[1x6double]

[5]'shengwu''sheng'[1x6double]

[6]'liu''yingyu'[1x6double]

8、建立单元矩阵B并回答有关问题。

B|1,1|=1

B|1,2|=Brenden

B|2,1|=reshape(1:

9,3,3)

B|2,2|={12342;54213;42367};

(1)size(B)和Ndims(B)的值分别是多少

(2)B

(2)和B(4)的值分别是多少

(3)B(3)=[]和B|3|=[]执行后分别是多少

答:

(1)B=

[1]'Brenden'

[3x3double]{3x3cell}

>>size(B)

ans=22

>>ndims(B)

ans=2

(2)B

(2)

ans=[3x3double]

B(4)

ans={3x3cell}

(3)B(3)=[]

B=[1][3x3double]{3x3cell}

B=[1][3x3double][]

 

MATLAB矩阵分析与处理

1、完成下列操作的命令。

(1)、建立三阶单位矩阵A

答:

A=eye(3)

A=

100

010

001

(2)、建立5*6随机矩阵A,其元素为[100,200]范围内的随机整数

答:

A=100+fix(101*rand(5,6))

A=

175196184135135128

125155125119183176

151114182125159176

170115124162155138

189126193147192157

(3)、产生均值为1,方差为0.2的500个正态分布的随机数

答:

1+0.2.*randn(500)

(4)、产生和A同样大的单位矩阵

答:

eye(size(A))

ans=

100000

010000

001000

000100

000010

(5)、将矩阵A的对角线的元素加30

答:

diag(A)+30

ans=

145

199

191

162

204

(6)、从矩阵A提取住对角线元素,并以这些元素构成对角元素A

答:

B=diag([diag(A)])

B=

1150000

0169000

0016100

0001320

0000174

2、使用函数实现方阵左旋90或右旋90的功能。

答:

A=[14710;25811;36912];

>>rot90(A)

ans=

101112

789

456

123

>>rot90(A,-1)

ans=

321

654

987

121110

3、建立一个方阵A,求方阵A的逆矩阵和A的行列式值,并验证A与A-1是互逆的

答:

A=[123;456;789];

>>inv(A)

Warning:

Matrixisclosetosingularorbadlyscaled.

Resultsmaybeinaccurate.RCOND=1.541976e-018.

ans=

-4.5036e+0159.0072e+015-4.5036e+015

9.0072e+015-1.8014e+0169.0072e+015

-4.5036e+0159.0072e+015-4.5036e+015

>>det(A)

ans=

6.6613e-016

4、求下列方程组的解

解:

A=[42-1;3-12;1230];

>>B=[2;10;8];

>>inv(A)*B

ans=

-6.0000e+000

2.6667e+001

2.7333e+001

5、求下列矩阵的住对角线元素、上三角阵、下三角阵、秩、范数、条件数和迹

(1)

(2)

答:

A=[1-123;51-42;3052;111509];

>>B=[0.43432;-8.9421];

>>diag(A)

ans=

1

1

5

9

>>diag(B)

ans=

4.3000e-001

4.0000e+000

>>triu(A)

ans=

1-123

01-42

0052

0009

>>tril(A)

ans=

1000

5100

3050

111509

>>triu(B)

ans=

4.3000e-0014.3000e+0012.0000e+000

04.0000e+0002.1000e+001

>>tril(B)

ans=

4.3000e-00100

-8.9000e+0004.0000e+0000

6、求矩阵A的特征值和相应的特征向量

答:

A=[110.5;110.25;0.50.252];

>>[V,D]=eig(A)

V=

7.2121e-0014.4428e-0015.3148e-001

-6.8635e-0015.6211e-0014.6147e-001

-9.3728e-002-6.9760e-0017.1033e-001

D=

-1.6647e-00200

01.4801e+0000

102.5365e+000

 

MATLAB程序设计

1、从键盘中输入四个整数,按下列的规则加密后输出。

加密规则:

每位数字都加上7,然后用和除以10的余数取代该数字;再把第一个数字与第三位数字交换,第二个数字和第三个数字交换。

解:

symsts

a=input('请输入a=')

b=input('请输入b=')

c=input('请输入c=')

d=input('请输入d=')

a=a+7;b=b+7;c=c+7;d=d+7;

t=a;a=c;c=t;

s=b;b=d;d=s;

abcd

a=12

请输入b=45

b=45

请输入c=23

c=23

请输入d=87

d=87

a=30

b=94

c=19

d=52

2、分别用IF语句和switch语句实现以下计算,其中a,b,c的值从键盘输入。

解:

a=input('请输入a=');

b=input('请输入b=');

c=input('请输入c=');

x=input('请输入x的值')

if0.5<=x<1.5

y=a*x^2+b*x+c;

elseif1.5<=x<3.5

y=a*(sin(b))^c+x

elseif3.5<=x<5.5

ln(abs(b+c/x))

end

y

3、产生二十个两位随机整数输出小于平均值的偶数。

解:

A=10+fix(89*rand(1,20));

s=sum(A)

pingjunzhi=s/20

fori=1:

20

ifA(i)

A(i)

end

end

4、输出20个两位随机整数求其中的最大值和最小值。

要求分别用循环结构和调用MATLAB的MAX函数、min的函数来实现。

答:

A=1+fix(100*rand(1,20))

fori=2:

20

ifA(i)>A

(1)

A

(1)=A(i);

end

end

A

(1)

fori=2:

20

ifA(i)

(1)

A

(1)=A(i);

end

end

A

(1)

5、已知s=1+2+22+23++263,用循环结构和MATLAB的sum函数求S

答:

s=0;

fori=1:

64

a=2^(i-1);

s=s+a;

end

s

解得:

s=

1.8447e+019

6、当n分别取100,1000,10000时求下列各式的值

(1)

(2)

(3)

(4)

答:

(1)n=input('请输入n=')

fori=1:

n

a=(-1)^(i+1)*(1/i);

s=s+a;

end

s

(2)s=0;

fori=1:

n

a=(-1)^(i+1)*(1/(2*i-1));

s=s+a;

end

s

(3)n=input('请输入n=')

s=0;

fori=1:

n

a=1/(4^i);

s=s+a;

end

s

(4)n=input('请输入n=')

s=1;

fori=1:

n

a=((2*i)*(2*i))/((2*i-1)*(2*i+1));

s=s*a;

end

s

要求分别用循环语句和向量运算来实现。

7、编写一个函数文件,求小于任意自然数n的肥波纳妾数列各项,此函数定义如下

答:

functionf=fun(n)

ifn==1

f=1;

elseifn==2

f=1;

elseifn>2

f=fun(n-1)+fun(n-2);

end

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

答:

functionfun=jucheng(A,B)

fun=A*B;

end

functionfuns=diancheng(A,B)

funs=A.*B

end

10、写出下列函数的输出结果

(1)s=0;

a=[121314;151617;181920;212223];

fork=a

forj=1:

4

ifrem(k(j),2)~=0

s=s+k(j);

end

end

end

s

解:

s=108

(2)函数文件:

functionfun=sub(z)

globalx

z=3*x;

x=x+z

命令文件:

globalx

x=1:

2:

5;y=2:

2;6;

sub(y);

x

y

解:

x=

41220

y=2

 

MATLAB绘图

1、绘制下列曲线

解:

(1)x=-1:

0.01:

1;

y=100./(1+x.^2);

plot(x,y)

(2)x=-1:

0.01:

1;

y=exp(-x.^2/2)/2*pi;

plot(x,y)

(3)、t=0:

0.01:

2*pi;

x=sin(t);

y=cos(t);

plot(x,y)

(4)、t=-1:

0.01:

1;

x=t.^2;

y=5*t.^3;

plot(x,y)

2、绘制下列及坐标图

解:

(1)x=0:

0.01:

2*pi;

y=5*cos(x)+4;

polar(x,y)

(2)x=1:

0.01:

2*pi;

y=12./(x.^(1/2));

polar(x,y)

(3)x=0:

0.01:

2*pi;

y=5./cos(x)-7;

polar(x,y)

(4)x=0:

0.01:

2*pi;

y=pi/3.*x.^2;

polar(x,y)

3、绘制下列三维图形

(4)半径为10的球面

解:

(1)、t=0:

0.01:

2*pi;

x=cos(t);

y=sin(t);

z=t;

plot3(x,y,z)

(2)、u=0:

0.01:

2*pi;

v=0:

0.01:

2*pi;

x=(1+cos(u)).*cos(v);

y=(1+cos(u)).*sin(v);

z=sin(u);

plot3(x,y,z)

(3)、x=-10:

0.01:

10;

y=-10:

0.01:

10;

A=meshgrid(x,y);

z=5.*ones(size(A))

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

当前位置:首页 > 幼儿教育 > 少儿英语

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

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