Matlab实验第一次实验答案

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一Matlab使用方法和程序设计

一、实验目的

1、掌握Matlab软件使用的基本方法;

2、熟悉Matlab的数据表示、基本运算和程序控制语句

3、熟悉Matlab绘图命令及基本绘图控制

4、熟悉Matlab程序设计的基本方法

二、实验内容:

1、帮助命令

使用help命令,查找sqrt(开方)函数的使用方法;

解:sqrt

Square root

Syntax

B = sqrt(X)

Description

B = sqrt(X) returns the square root of each element of the array X. For the elements of X that are negative or complex, sqrt(X) produces complex results.

Remarks

See sqrtm for the matrix square root.

Examples

sqrt((-2:2)')

ans =

0 + 1.4142i

0 + 1.0000i

1.0000

1.4142

2、矩阵运算

(1)矩阵的乘法

已知A=[1 2;3 4]; B=[5 5;7 8]; 求A^2*B

解:A=[1 2;3 4 ];

B=[5 5;7 8 ];

A^2*B

(2)矩阵除法

已知A=[1 2 3;4 5 6;7 8 9];

B=[1 0 0;0 2 0;0 0 3];

A\B,A/B

解:A=[1 2 3;4 5 6;7 8 9 ];

B=[1 0 0;0 2 0;0 0 3 ];

A\B,A/B

(3)矩阵的转置及共轭转置

已知A=[5+i,2-i,1;6*i,4,9-i];

求A.', A'

解:A=[5+1i,2-1i,1;6*1i,4,9-1i ];

A1=A.',A2=A'

(4)使用冒号表达式选出指定元素

已知:A=[1 2 3;4 5 6;7 8 9];

求A 中第3列前2个元素;A 中所有列第2,3行的元素;

方括号[]

解:A=[1 2 3;4 5 6;7 8 9 ];

B=A([1,2],[3]),C=A(2:end, : )

用magic 函数生成一个4阶魔术矩阵,删除该矩阵的第四列

3、多项式

(1)求多项式42)(3--=x x x p 的根

解:A=[1 0 -2 -4];

B=roots(A)

(2)已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵A的特征多项式;

解:

A=[1.2 3 5 .9 ; 5 1.7 5 6 ;3 9 0 1 ;1 2 3 4];

A=poly(A);

A=poly2sym(A)

把矩阵A作为未知数代入到多项式中;

4、基本绘图命令

(1)绘制余弦曲线y=cos(t),t∈[0,2π]

解:t=0:.1:2*pi;

y=cos(t);

plot(t,y),grid

(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π]t=0:.1:2*pi;

y1=cos(t-0.25);

y2=sin(t-0.25);

plot(t,y1,t,y2)

grid

5、基本绘图控制

绘制[0,4π]区间上的x1=10sint曲线,并要求:

(1)线形为点划线、颜色为红色、数据点标记为加号;

(2)坐标轴控制:显示范围、刻度线、比例、网络线

(3)标注控制:坐标轴名称、标题、相应文本;

t=0:.01:4*pi;

y=10*sin(t);

plot(t,y,'-.',t,y,'r')

grid

6、基本程序设计

(1)编写命令文件:计算1+2+…+n<2000时的最大n值;

解法1:

s=0;i=0;

while(s<2000) i=i+1;s=s+i; end

s=s-i,i=i-1

解法2:s=0;

for i=1:1000; s=s+i;if(s>2000) ,break;

end

end

s=s-i,i=i-1

(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到n次幂的和。解法1:function [ s i ] = mitifang1(n)

s=0;

for i=0:n

s=s+2^i; if(i>n), break;

end

end

s,n

解法2:function [ s i ] = mitifang2(n)

s=0;i=0;

while(i<=n) ,s=s+2^i;i=i+1;

end

s,n

(3)如果想对一个变量x自动赋值。当从键盘输入y或Y时(表示是),x自动赋为1;

当从键盘输入n或N时(表示否),x自动赋为0;输入其他字符时终止程序。reply=input('ÇëÊäÈë×Öĸ: ','s');

while reply=='y'||reply=='Y'||reply=='n'||reply=='N'

if (reply=='y'||reply=='Y')

x=1;

disp('x=')

disp(x)

elseif (reply=='n'||reply=='N')

x=0;

disp('x=')

disp(x)

else

disp('shu ru you wu')

end

reply=input('ÇëÊäÈë×Öĸ£º ','s');

end

disp('shu ru you wu ')

解:

相关文档
最新文档