当前位置:文档之家› matlab基础练习题带复习资料

matlab基础练习题带复习资料

matlab基础练习题带复习资料
matlab基础练习题带复习资料

Matlab 基础练习题

常量、变量、表达式

1、 MATLAB 中,下面哪些变量名是合法的?( )

(A )_num (B )num_ (C )num- (D )-num 2、 在MA TLAB 中,要给出一个复数z 的模,应该使用( )函数。

(A )mod(z) (B )abs(z) (C )double(z) (D )angle(z) 3、 下面属于MATLAB 的预定义特殊变量的是?( )

(A )eps (B )none (C )zero (D )exp

4、 判断:在MA TLAB 的内存工作区中,存放一个英文字符 'a' 需要占用1个字节,存放

一个中文字符‘啊’需要占用2个字节。( 错,都是2个字节 )

5、 判断:MA TLAB 中,i 和j ( 对 )

6、 判断:MA TLAB 中,pi 代表圆周率,它等于3.14。( 错,后面还有很多位小数 )

7、 在MA TLAB 中,若想计算的5

1)3.0sin(21+=

πy 值,那么应该在MA TLAB 的指令窗中

输入的MA TLAB 指令是__y1=2*sin(0.3*pi)/(1+sqrt(5))_。

8、 在MA TLAB 中,a = 1,b = i ,则a 占_8__个字节,b 占_16_个字节,c 占________字

节。

9、 在MA TLAB 中,inf 的含义是__无穷大__,nan 的含义是__非数(结果不定)___。

数组

1、 在MA TLAB 中,X 是一个一维数值数组,现在要把数组X 中的所有元素按原来次序

的逆序排列输出,应该使用下面的( )指令。

(A )X[end:1] (B )X[end:-1:1] (C )X (end:-1:1) (D )X(end:1) 2、 在MA TLAB 中,A 是一个字二维数组,要获取A 的行数和列数,应该使用的MATLAB

的命令是( )。

(A )class(A) (B )sizeof(A) (C )size(A) (D )isa(A)

3、 在MATLAB 中,用指令x=1:9生成数组x 。现在要把x 数组的第二和第七个元素都

赋值为0,应该在指令窗中输入( ) (A )x([2 7])=(0 0) (B )x([2,7])=[0,0] (C )x[(2,7)]=[0 0] (D )x[(2 7)]=(0 0)

4、 在MA TLAB 中,依次执行以下指令:clear;A=ones(3,4); A(:)=[-6:5];这时,

若在指令窗中输入指令b=A(:,2)',那么,MATLAB 输出的结果应该是( ) (A )b = -3 -2 -1 (B )b = -2 -1 0 1 (C )b = -5 -1 3 (D )b = -5 -2 1 4

5、 在MA TLAB 中,A = 1:9,现在执行如下指令L1 = ~(A>5),则MATLAB 的执行结果应

该是L1 =___ 1 1 1 1 1 0 0 0 0___。

6、在MA TLAB中,要求在闭区间[0,5]上产生50个等距采样的一维数组b,请写出具体

的MA TLAB指令___linspace(0,5,50) ___。

7、在MA TLAB中,A = [0:1/2:2]*pi,那么sin(A) = ___[0 1 0 -1 0]_____。

8、在MA TLAB中,A=[1,2,3;4,5,6;7,8,0],B=[2,1,6;8,5,2;14,2,1]。写出下面MATLAB语句

执行的结果:(为节省篇幅,把矩阵写成mat2str的形式)

(1)A==B [0 0 0; 0 1 0; 0 0 0]

(2) A.*B [2 2 18;32 25 12;98 16 0]

(3)A(:)' [1 4 7 2 5 8 3 6 0]

(4)A(1,:)*B(:,3) 13

9、在MA TLAB中,写出下面MA TLAB语句执行的结果:

(1)clear,A = ones(2,6)

A =

1 1 1 1 1 1

1 1 1 1 1 1

(2)A(:) = 1:2:24

A =

1 5 9 13 17 21

3 7 11 15 19 23

(3)A([1:3:7])

ans =

1 7 13

(4)diag(diag(A))

ans =

1 0

0 7

(5) B = A(:,end:-1:1)

B =

21 17 13 9 5 1

23 19 15 11 7 3

10、请编写一段matlab程序,完成以下功能:

(1)生成一个100行,200列的二维随机数组;

A=rand(100,200);

(2)找出数组A中所有大于0.49且小于0.51的元素的单下标;

Idx=find(A(:)>0.49 & A(:)<0.51)

(3)数组A中满足(2)中的条件的元素有多少个?

length(Idx)

(4)求出数组A中满足(2)中的条件的元素的和,并求出这些元素的平均值;

sum(A(Idx)), m=mean(A(Idx))

(5)将(4)求出的平均值赋值给数组A中满足(1)中的条件的每个元素。

A(Idx)=m;

11、请编写一段matlab程序,完成以下功能:

(1)找出100到200之间的所有质数,将这些质数存放在一个行数组里;

X=100:200;

p=X(isprime(X))

(2) 求出这些质数之和;

sum(p)

(3) 求出100到200之间的所有非质数之和(包括100和200)。

sum(X(~isprime(X)))

12、 22cos 0.7sin (1)x y x x ??

=+

??+??

,编写一段matlab 程序,要求如下

(1) 在[0,2]π区间,每隔0.01取一x 数值,计算出相应的y 的函数值;

x=0:0.01:2*pi;

y=(0.7+2*cos(x)./(1+x.^2)).*sin(x)

(2) 根据MATLAB 计算出的数据,找出在[0,2]π内该函数的极小值的坐标。

[my,idx]=min(y) x(idx)

数值计算

1、 在MA TLAB 中,A 是一个10×10数组,我们把该数组看成矩阵的话,则此矩阵的行列

式值 = ___det(A)__,此矩阵的逆矩阵(如果存在的话) = _inv(A)___。(用MATLAB 的函数表示) 2、 求解下列方程组:

1234234123412343212240

x x x x x x x x x x x x x x x ++-=??-+=??

+++=??-+-=?347124

57423859652108

x y z w x y z w x z w x y z w +--=??-++=-?

?

+-=??-+-+=-? A=[1 1 3 -1;0 1 -1 1;1 1 2 2;1 -1 1 -1];

b=[2;1;4;0]; x=A\b

A=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10]; b=[4;-3;9;-8]; xyzw=A\b

3、 求有理分式()()

()()

3

32

3

2

30.522521x

x x R x

x x x ++=

+-++的商多项式和余多项式

n=conv([3 0 1 0],[3 0 0 0.5]); d=conv([1 2 -2],[5 2 0 1]); [q,r]=deconv(n,d)

4、 一元多项式4

2

234p x x x =-+,写出表示p 的MATLAB 语句__p=[2 0 -3 4 0]__,求

0p =的根的MA TLAB 语句是____ roots(p)__,求 4.3x =时p 的数值的MA TLAB 语句是__ polyval(p,4.3)___。

程序设计

1、 M 脚本文件和函数文件的有什么区别?

最主要的差别是,函数有自己的独立工作区,和外界的信息交换通过输入输出参数实现;而脚本没有独立工作区,其直接使用宿主程序的工作区,并把结果留在宿主程序中。 2、 掌握下面程序设计中常用的函数及关键字:

input pause warning nargin nargout for while if elseif else switch case otherwise end try catch break continue end 3、 分别用for 和while 循环语句计算63

2

i

i K ==

∑的程序。还请写出一种避免循环的计算程

序。(不要用symsum 函数) K=0; for i=0:63 K=K+i; end

K=0; i=0; while i<=63 K=K+i; i=i+1; end

K = sum(2.^(0:63))

4、 MATLAB 提供了两种循环结构,一种是for 循环结构,另一种是__while _循环结构。

5、 编写M 函数求和123s n =++++L

function s=mysum(n) s = sum(1:n); 6、 编写M 函数求积123p n =????L

function p=mysum(n) p = prod(1:n);

7、 编写M 函数列出从整数a 到整数b 之间能被3整除的奇数。

function r=odds3(a,b) r=a:b;

r=r(mod(r,2)==1&mod(r,3)==0)

8、 编写M 脚本列出从100到200不能被3整除同时也不能被7整除的数。

X=100:200;

X(mod(X,3)~=0&mod(X,7)~=0)

9、 一张纸厚0.06mm 且足够大,试问将纸对折多少次,其厚度将超过10000m ?

按题意,就是要求2^n * 0.06E-3 >= 10000,所以 n = ceil(log(10000/0.06e-3)/log(2))

10、 编写MATLAB 脚本输出“水仙花数”及水仙花数的个数。所谓“水仙花数”是一个3

位数,其各位数字的立方和等于该数本身。例如3

3

3

153153=++。 c=0;

for n=100:999

m=[fix(n/100) fix(mod(n,100)/10) mod(n,10)]; if n==sum(m.^3),

fprintf('%i = %i^3 + %i^3 + %i^3\n',n,m); c=c+1; end end

fprintf('\n 共%i 个水仙花数\n',c)

输出结果:

153 = 1^3 + 5^3 + 3^3 370 = 3^3 + 7^3 + 0^3 371 = 3^3 + 7^3 + 1^3 407 = 4^3 + 0^3 + 7^3

共4个水仙花数

绘图

1、 MATLAB 中,绘制三维曲面图的函数是( )

(A )surf (B )plot (C )subplot (D )plot3 2、 MATLAB 中,要绘制三维空间曲线,应该使用( )函数。

(A )polar (B )plot (C )subplot (D )plot3

3、 在MA TLAB 中,A 是一个1000行2列的二维数值数组,现在要把A 的第一列数据作

为横坐标,把A 的第二列数据作为纵坐标,画出一条曲线,试写出相应的MATLAB 语句_____plot(A(:,1),A(:,2))______。

4、 MATLAB 绘图指令中的__subplot _指令允许用户在同一个图形窗里布置几个独立的子

图。 5、 编写一段matlab 程序,绘制出二元函数2sin sin x y

z xy

=

三维网线图,要求如下:

(1)x ,y 的取值范围为99x -≤≤,99y -≤≤; (2)x ,y 每隔0.5取一个点;

(3)图形的线型和颜色由MA TLAB 自动设定

[x,y]=meshgrid((-9:0.5:9)+eps); % 加eps 避免出现0/0 z=2*sin(x).*sin(y)./(x.*y); mesh(x,y,z)

6、 编写一段matlab 程序,绘制出函数11sin(),2sin(2)y x y x x

==图形的MA TLAB 语句,

要求如下:

(1)x 的取值范围为33≤≤-x ; (2)x 每隔0.01取一个点;

(3)y1和y2的图形要画在同一幅图里;

(4)图形的线型和颜色由MA TLAB 自动设定。 x=(-3:0.01:3)+eps; % 加eps 避免出现除0警告 y1=x.*sin(1./x); y2=sin(2*x); plot(x,y1,x,y2)

符号计算

1、 在MA TLAB 中,能正确的把x 、y 定义成符号变量的指令是( )

(A )sym x y (B )sym x , y (C )syms x , y (D )syms x y

2、 要清除MA TLAB 工作空间中保存的变量,应该使用_clear _指令。

3、 在MA TLAB 中,指令findsym(sym('sin(w*t)'),1)的执行结果是__w __。

4、 在MA T L AB 中,写出把x 和y 定义为符号变量的相应语句__syms x y _。

5、 求解下列方程组的符号解:

1234234123412343212240

x x x x x x x x x x x x x x x ++-=??-+=??

+++=??-+-=?347124

57423859652108

x y z w x y z w x z w x y z w +--=??-++=-?

?

+-=??-+-+=-? A=[1 1 3 -1;0 1 -1 1;1 1 2 2;1 -1 1 -1];

b=[2;1;4;0]; x=sym(A)\b

A=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10]; b=[4;-3;9;-8]; xyzw=sym(A)\b

6、 求极限:

(1) 求函数()11x

y x =+在0x =处的极限;

>> syms x

>> limit((1+x)^(1/x),0) ans = exp(1)

(2) 求函数sin 35x

y tg x

=

在0x =处的极限; >> syms x

>> limit(sin(3*x)/tan(5*x),0) ans = 3/5

(3) 求函数3x

nx

y =

在趋向正无穷处的极限; >> syms x n

>> limit(n*x/3^x,inf) ans = 0

(4) 求函数23ln x

y x

=在趋向正无穷处的极限;

>> syms x

>> limit(log(x)^2/x^3,inf) ans = 0

7、 求导数:

(1) 求函数21

33y x x

=

-+的50阶导数; >> syms x

>> y=1/x^2-3*x+3; >> diff(y,50) ans =

873822869372/x^52

(2) 求函数(

)sin t

c a

y a be t

=+在t b =处的3阶导数;

syms t a b c

y=a*sin(b*exp(c^t)+t^a); simple(subs(diff(y,t,3),t,b))

8、 求不定积分:

3221

1

sin dx dx

x a x -??

>> syms x

>> int(1/sin(x)^3) ans =

-1/2/sin(x)^2*cos(x)+1/2*log(csc(x)-cot(x))

>> syms x a

>> int(1/(a^2-x^2))

ans =

-1/2/a*log(a-x)+1/2/a*log(a+x)

>> syms x

>> int((sqrt(x^2-3)-sqrt(x^2+3))/sqrt(x^4-9))

ans =

(x^4-9)^(1/2)/(x^2-3)^(1/2)/(x^2+3)^(1/2)*asinh(1/3*3^(1/2)*x)-1/(x^2+3)^(1/2)*(x ^4-9)^(1/2)/(x^2-3)^(1/2)*log(x+(x^2-3)^(1/2))

9、求定积分及广义积分

()

2

22

2222

11

sin cos x

x xdx x y dydx

π

π

--

+

????

>> syms x a

>> int(sqrt(x^2+a),-2,2)

ans =

2*(4+a)^(1/2)+1/2*a*log(2+(4+a)^(1/2))-1/2*a*log(-2+(4+a)^(1/2))

>> syms x

>> int(sin(x)^2*cos(x)^2,-pi,pi)

ans =

1/4*pi

>> syms x y

>> int(int(x^2+y^2,y,1,x^2),1,2)

ans =

1006/105

10、求下面的积分,给出50位精度的数值:

()

2

222

11

sin sin

x

x y dydx

+

??

>> syms x y

>> J=int(int(sin(x)^2+sin(y)^2,y,1,x^2),1,2);

>> vpa(J,50)

ans =

2.1541626599756916

11、级数求和:

()

()()

()()

2

11

21

!

10

1

311

2

21

10

211

n

n

n

n n

k

n n

n k

z

n z

n

x

n z x

k x

∞∞

==

+

∞∞

+

==

-

+-

-

??

->

?

++

??

∑∑

∑∑

>> syms z n

>> symsum((z-1)^n/(n^2*2^n),n,1,inf)

ans =

(1/2*z-1/2)*hypergeom([1, 1, 1],[2, 2],1/2*z-1/2)

>> syms z n

>> symsum((3*n+1)*(z-1)^n,n,1,inf)

ans =

(4*z-4)*(-1/(z-2)+3/4/(z-2)^2*(z-1))

>> syms z n

>> symsum(n*(-1)^(n+1)*z^n,n,1,inf)

ans =

z/(z+1)^2

>> syms x positive

>> syms k

>> simple(symsum(2/(2*k+1)*((x-1)/(x+1))^(2*k+1),k,0,inf))

ans =

log(-(1+((x^2-2*x+1)/(x^2+2*x+1))^(1/2))/(-1+((x^2-2*x+1)/(x^2+2*x+1))^(1/2)))

MATLAB基础教程 薛山第二版 课后习题答案

《MATLAB及应用》实验指导书《MATLAB及应用》实验指导书 班级:T1243-7 姓名:柏元强 学号:20120430724 总评成绩: 汽车工程学院 电测与汽车数字应用中心

目录 实验04051001 MATLAB语言基础 (1) 实验04051002 MATLAB科学计算及绘图 (18) 实验04051003 MATLAB综合实例编程 (31)

实验04051001 MATLAB语言基础 1实验目的 1)熟悉MATLAB的运行环境 2)掌握MATLAB的矩阵和数组的运算 3)掌握MATLAB符号表达式的创建 4)熟悉符号方程的求解 2实验内容 第二章 1.创建double的变量,并进行计算。 (1)a=87,b=190,计算 a+b、a-b、a*b。 clear,clc a=double(87); b=double(190); a+b,a-b,a*b (2)创建 uint8 类型的变量,数值与(1)中相同,进行相同的计算。 clear,clc a=uint8(87); b=uint8(190); a+b,a-b,a*b 2.计算:

(1) () sin 60 (2) e3 (3) 3cos 4??π ??? clear,clc a=sind(60) b=exp(3) c=cos(3*pi/4) 3.设2u =,3v =,计算: (1) 4 log uv v (2) () 2 2 e u v v u +- (3) clear,clc u=2;v=3; a=(4*u*v)/log(v) b=((exp(u)+v)^2)/(v^2-u) c=(sqrt(u-3*v))/(u*v) 4.计算如下表达式: (1) ()() 3542i i -+ (2) () sin 28i - clear,clc (3-5*i)*(4+2*i) sin(2-8*i)

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) y =

第一章 基本MATLAB基本命令

MATLAB学习指南 第1章.基本MATLAB指令 1.1.基本数量运算 首先,我们来谈一谈怎样向程序中添加注释(例如此行)。注释就是我们向程序中添加的文字,用来解释我们在做什么。所以,如果我们或其他人以后读到此代码,就能很容易地理解代码在执行什么指令。在一个MATLAB文件中,如果百分号%出现在一行文字中,百分号后面的所有文字都是注释,而不是MATLAB想要进行解释的指令。首先,我们向屏幕输入信息,告诉计算机我们开始运行1.1节。 指令disp('字符串')在屏幕上展示了文本字符串。 接下来,我们令一个变量等于1。 如果x没有被声明,这一指令先为变量x在内存中分配一个空间,然后又将x的值1存储在所分配的空间中。同时,这一指令会将"x = 1"显示在屏幕上。通常,我们不希望像这样的输出结果把屏幕弄得杂乱,所以我们在指令的最后加上一个分号就可以使指令变得“不可见”。例如,我们使用下列指令把x的值“不可见地”变为2,然后将结果显示在屏幕上。x=2;x的值发生了改变,但是却没有显示在屏幕上 disp('我们已经改变了x的值'); 然后,通过输入“x”,不带分号,我们显示x的值。 现在,我们来看如何声明其它变量。 y=2*x; 对y的值进行初始化,使其等于x的值的2倍。 x=x+1;使x的值增加1。 z=2*x; 声明了另一变量z。 因为在声明变量z时x的值已经发生了变化,所以z不等于y。 接下来,我们想看存储在内存中的变量的列表。我们使用指令“who”来实现。 通过使用“whos”我们能得到更多的信息 我们也可使用这些指令来得到有关仅有的某些变量的信息。

我们想要去掉变量“差”。 使用指令“clear”来实现。 接下来,我们想要去掉变量x和y。 我们再次使用指令“clear”。 一般来说,好的程序设计模式都要求每行只编写一个指令;但是,MATLAB却允许将多个指令放在一行。 更普遍的情况是,由于语句结构的长度使得我们希望一个指令能够分成多行。这可通过使用3个点来实现。 最后,当使用指令“clear all”时,我们可一次去掉所有变量。 1.2.基本向量运算 声明一个变量最简单的,但不值得推荐的方法就是逐一输入其分量。 x显示x的值 一般来说,最好一下子声明一个变量,因为这样的话MATLAB从一开始就知道它需要分配多少内存。对于大型向量,这会更加有效。 y=[1 4 6] 与上述代码作用相同。 注意到这次声明了一个行向量。为得到一个列向量,我们或者使用转置(复合x的伴随矩阵)算符xT=x’;把实行向量x进行转置,或从一开始就将其变成列向量。 为了看到行向量和列向量在大小上的不同,使用指令“size”便可返回向量或矩阵的大小。

薛山matlab基础教程第三版习题解答2

第2章习题参考答案 1.创建double的变量,并进行计算。 (1)a=87,b=190,计算a+b、a-b、a*b。 (2) 创建uint8 类型的变量,数值与(1)中相同,进行相同的计算。参考答案: (1) >> a=87 a = 87 >> b=190 b = 190 >> a+b ans = 277 >> a-b ans = -103 >> a*b ans = 16530 (2) >> c=uint8(87) c = 87 >> d=uint8(190) d = 190 >> c+d ans = 255 >> c-d ans = >> c*d ans = 255 2.计算: (1) () sin60o (2) e3

(3) 3cos 4??π ??? 参考答案: (1) >> sind(60) ans = 0.8660 (2) >> exp(3) ans = 20.0855 (3) >> cos(3*pi/4) ans = -0.7071 3.设2u =,3v =,计算: (1) 4log uv v (2) ()22e u v v u +- (3) 参考答案: (1) >> u=2; >> v=3; >> 4*u*v/log(v) ans = 21.8457 (2) >> (exp(u)+v)^2/(v^2-u) ans = 15.4189 (3) >> sqrt(u-3*v)/(u*v) ans = 0 + 0.4410i

4.计算如下表达式: (1) ()() i i -+ 3542 (2) () - sin28i 参考答案: (1) >> (3-5*i)*(4+2*i) ans = 22.0000 -14.0000i (2) >> sin(2-8*i) ans = 1.3553e+03 + 6.2026e+02i 5.判断下面语句的运算结果。 (1)4 < 20 (2)4 <= 20 (3)4 == 20 (4)4 ~= 20 (5)'b'<'B' 参考答案: (1) >> 4<20 ans = 1 (2) >> 4<=20 ans = 1 (3) >> 4==20 ans = (4) >> 4~=20 ans = 1 (5) >> 'b'<'B'

MATLAB基础及应用实验指导书

MATLAB基础及应用实验指导书

MATLAB基础及应用课程实验指导书 实验一软件环境和基本操作熟悉 一、实验目的 ①熟悉MATLAB 主界面,并学会简单的菜单操作。 ②学会简单的矩阵输入与信号输入。 ③掌握部分绘图函数。 二、实验内容 熟悉MATLAB操作环境,通过简单操作熟悉MATLAB的基本使用方法。 三、实验要求与步骤 1、用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。也可以键入help 进行进一步了解。 MATLAB 启动界面如图所示: MATLAB 语言最基本的赋值语句结构为:变量名列表= 表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“= ”省略,则ans 变量将自动建立,例如键入:1900/81 ,得到输出结果:ans =23.4568 。 MATLAB 中变量命名的原则要求必须以英文字母开头,文件夹名字中可以

还包括、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的。这种规则包括将来为自己编写的脚本文件、函数文件命名以及为使用的变量命名也应遵循这个规则。 2、用户工作目录和当前目录的建立和设置 1)为管理方便,每个用户在使用MATLAB 前,尽量为自己建立一个专门的工作目录,即“用户目录”,用来存放自己创建应用文件。例如首先打开资源管理器,在E 驱动器下可以根据自己喜好建立一个新文件夹,但应注意:该文件夹必须以英文开头,文件夹名字中可以包括字母、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的,这与MATLAB 中为变量和文件名命名原则是一致的。尽管MATLAB\work 允许用户存放用户文件,但最好把它仅作为临时工作目录来使用。 2)为了用户运行方便,在开始工作前可把用户定义的目录设置为当前目录,方法是可直接在MATLAB 命令窗口桌面上方通过目录设置栏来实现。 3)把自己的工作目录加到MATLAB 搜索路径上,这样可以在任何情况下方便地调用自己的编写文件。MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在MATLAB 定义的搜索路径其他目录中,检查是否有该M 文件存在。设置方法是通过File 菜单下设置路径对话框进行。 3、熟悉简单的矩阵输入 1)从屏幕上输入矩阵A=[1 2 3 ;4 5 6;7 8 9] 回车 A=[1,2,3;4,5,6;7,8,9] 回车 观察输出结果。 2)试用回车代替分号,观察输出结果。 3)输入size(A) ,观察结果。 4)输入矩阵B=[9,8,7;6,5,4;3,2,1];回车 输入矩阵C=[4,5,6;7,8,9;1,2,3];回车,然后分别键入 A B C 回车观察结果。 5)选择File | new 菜单中的M-file ,输入B=[9,8,7;6,5,4;3,2,1] ;保存为

最新MATLAB应用基础第一章matlab基础

M A T L A B应用基础第一章m a t l a b基础

MATLAB应用 赵国瑞 天津大学电子信息工程学院计算机基础教学部 2000.3 制作

概述 MATLAB是世界流行的优秀科技应用软件之一。具有功能强大(数值计算、符号计算、图形生成、文本处理及多种专业工具箱)、界面友好,可二次开发等特点。 自1984年由美国MathWorks公司推向市场以来,先后发布了多个版本,1993年发布4.0版,1996年发布5.0版,1999年发布5.3版。目前发布的为6.5版。 MATLAB有专业和学生版之分。二者功能相同,但计算规模和计算难度有差别。 在国内外,已有许多高等院校把MATLAB列为本科生、研究生必须掌握的基本技能。我校自1999年列为研究生选修课程。而且有很多教师、研究生把它作为进行科研的重要工具。 国内关于MATLAB的书籍很多,如: 《精通MATLAB 5.3》张志涌等编著北京航空航天大学出版社,2000.8

《科学计算语言MATLAB简明教程》杜藏等编著南开大学出版社,1999.6 《精通MATLAB 5》张宜华编写清华大学出版社,1999.6 《精通MATLAB--综合辅导与指南》 Duane Hanselman、Bruce Littlefield编著李人厚等译较西安交通大学出版社,1998.1 等等 本课程主要介绍MATLAB 5.3的基本功能和基础知识。至于其包含的多种工具箱,如仿真工具箱、解非线性方程(组)工具箱、优化工具箱等,应通过本学习后,结合各专业自己进一步学习和使用。 第1章MATLAB基础 1.1 源文件(M-文件) 分为两类:函数文件和非函数文件。 都用扩展名.M 1.1.1函数文件

Matlab基础教程

1-1、基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如: >> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。 小提示: ">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 我们也可将上述运算式的结果设定给另一个变数x: x = (5*2+1.3-0.8)*10^2/25 x = 42 此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。 小提示: MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)*exp(-0.3*4^2);

若要显示变数y的值,直接键入y即可: >>y y =-0.0045 在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。 下表即为MATLAB常用的基本数学函数及三角函数: 小整理:MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 ceil(x):天花板函数,即加入正小数至最近整数 rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开

MATLAB基础及应用论文

题目 : MATLAB 语言多项式计算的分析与概述 摘要 :数值计算在科学研究与工程应用中有着十分广泛的应用,MATLAB 向我们提供 了标准的多项式的常用函数,包括求根、相乘、相除等。这些功能在进行现代数字信号处理与分析时非常有用。本文主要通过示例的形式分析与概述MATLAB 多项式计算的基本内容。 关键词 : 多项式 ;运算 ; 函数 ; 拟合 ; MATLAB 。 一、 引言 : MATLAB 是由MATH WORKS 公司推出的一种面向科学与工程的计算软件。 如今MATLAB 语言发展速度非常快,涉及十分广阔,本文主要讨论MATLAB 多项式的计 算,可谓MATLAB 的冰山一角。读者若要了解MATLAB 语言的更多知识还应多读多看他人著作。 二、 多项式计算 : 1,多项式的创建方法 : 在MATLAB 里:多项式由一个行向量表示,它的系数是按降序排列。 例如: 由1×N 的向量 表示 多项式,如用poly2sym()可以查看这个多项式。 (1)直接输入法 在MATLAB 命令窗口中直接输入多项式的系数矢量,然后利用转换函数poly2sym 将多项式由系数矢量形式转换为符号新式。 (2)指令P=poly(AR)法 若AR 是方阵,多项式P 是该方阵的特征多项式 若AR=[a 1, a 2,…,a n-1,a n ],则AR 的元素认为是多项式P 的根 如果A 为二维矩阵, poly(A)给出A 的特征多项式。如果A 为一维矩阵, poly(A)表示由A 的元素为多项式的根所确定的多项式。 【例1】产生多项式的方法。 clear %方法一(由多项式的系数确定的多项式) p=[1 -2 3]%直接给出多项式p poly2sym(p)%给出p 多项式的表达式 %方法二(由矩阵所确定的多项式) a=[1 2;-2 4] ] ..[210n a a a a p =n n n n n a x a x a x a P ++++=-- (22110)

MATLAB基础及其应用教程周开利邓春晖课后答案

第三章习题及参考答案 解答: >> p=[1 -1 -1]; >> roots(p) ans = -0.6180 1.6180 解答: 取n=5,m=61 >> x=linspace(0,2*pi,5); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on

分段线性和三次样条插值方法与精确值之差取n=11,m=61 >> x=linspace(0,2*pi,11); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on 分段线性和三次样条插值方法与精确值之差

解答: >> x=[0,300,600,1000,1500,2000]; >> y=[0.9689,0.9322,0.8969,0.8519,0.7989,0.7491]; >> xi=0:100:2000; >> y0=1.0332*exp(-(xi+500)/7756); >> y1=interp1(x,y,xi,'spline'); >> p3=polyfit(x,y,3); >> y3=polyval(p3,xi); >> subplot(2,1,1);plot(xi,y0,'o',xi,y1,xi,y3,'-.'); >> subplot(2,1,2);plot(xi,y1-y0,xi,y3-y0);grid on 插值和拟合方法相比较,都合理,误差也相近。 解答: 梯形法积分 >> x=-3:0.01:3;

第一章MATLAB基础知识

第一章MATLAB基础知识 1.1 MATLAB开发环境 1.MATLAB操作桌面 MATLAB4.0以上版本都是在Windows以上环境支持下操作与运行的,因此,这里必须假定读者对Windows有一定的了解和掌握。本书以Windows98环境,MATLAB6.5版本为例介绍。书中绝大多数例子在MA TLAB5.3版本中亦能使用. 要想进入MATLAB系统,方法有二: (1)在Windows98的桌面上双击MATLAB快捷图标。 (2)单击Windows98的“开始”按钮,再依次单击:程序/MA TLAB/MA TLAB6.5; 图1-1 MATLAB6.5除保留了传统的命令窗口外,还增加了启动平台窗口、工作空间窗口、命令历史窗口、当前路径窗口等窗口,与新的M文件编辑器和新的在线帮助浏览器等共同构成了MA TLAB6.5的开发环境。 MATLAB的开发环境是MATLAB语言的基础和核心部分,MATLAB语言的全部功能都是在MA TLAB的开发环境中实现的,MA TLAB的仿真工具Simulink、MATLAB

的工具箱等其他附加功能的实现也必须使用MATLAB开发环境,因此,掌握MATLAB 的开发环境是掌握MATLAB语言的关键。 启动MA TLAB后,将显示包括命令窗口、启动平台窗口、工作空间窗口、命令历史窗口和当前路径窗口等5个窗口和主菜单组成的操作桌面(图1-1)。本节对操作桌面的各个窗口作简要介绍,部分窗口的功能和使用将在以后的章节中详细介绍。 操作桌面缺省状态下显示3个窗口,当前路径和工作空间窗口在同一位置显示,可以通过该窗口下方的箭头或窗口标签来切换,命令历史窗口和当前目录窗口在同一位置显示,可以通过该窗口下方窗口标签来切换。每个窗可以脱离操作桌面独立出来。也可以通过菜单View来选择显示哪些窗口。 MATLAB还设定了几种特定的窗口布局方式,在View菜单的Desktop Layout选项中,给定了6种布局方式: Default(缺省方式) Command Window Only(只显示命命令窗口方式) Simple(简单方式,只有命令历史窗口和命令窗口) Short History(低命令历史窗口方式) Tall History(高命令历史窗口方式) Five Panel(5个窗口平铺方式) 2.MATLAB的通用参数设置 MATLAB的通用参数和各功能窗口的参数可以通过主菜单中的file/Preferences项设置,这里先介绍通用参数的设置。 在主菜单中选择Preferences项,打开Preferences窗口(图1-2),缺省状态为通用参数设置,其选项包括: Display(显示选择)Show tooltips(显示相关信息),当单选框选择后,鼠标放在工具栏的快捷按钮上时显示相关信息。 Toolbox caching(工具箱缓冲区)对于远程使用MATLAB的用户,应选择单选框Enable Toolbox caching(打开工具箱缓冲区),建立一个高速缓冲区,以提高使用速度,对单机用户该选项作用不大。 Figure window printing(图形窗口打印)有3个选项,分别为Use printer default(按打印机缺省设置输出)、Always send as black and white(按黑白图形输出)和Always send as color(按彩色图形输出)。

matlab基础与应用教程答案

8-1建立一个图形窗口,使之背景颜色为红色,并在窗口上保留原有的菜单项,而且在按下鼠标左键之后显示出Left Button Pressed 字样。 本体程序: clc; hf=figure('color','r','windowbuttondownfcn','axis off;text(0.1,0.5,''Left Button Pressed'',''fontsize'',30)') 运行结果: hf = 1 8-3利用图形对象绘制下列曲线,要求先利用默认属性绘制曲线,然后通过图形句柄操作来改变曲线的颜色、线型和线宽,并利用文字对象给曲线添加文字标注。 (1)2)cos(2.0+=-x e y x clc; x=0:5*pi; y=exp(-0.2*x).*cos(x)+2; h=plot(x,y); set(h,'Color',[1,0,0],'LineStyle',':','LineWidth',2);

(2)?????==325t y t x 程序: t=0:2:100; x=t.*t; y=5*t.^3; hf=plot(x,y); set(hf,'color','b','linestyle',':','marker','p','linewidth',0.3);

8-4利用图形对象绘制下列三维图形,要求与上题相同。 (1)?? ???===t z t y t x sin cos 程序: t=0:0.1:2*pi; x=cos(t); y=sin(t); z=t; hf=plot3(x,y,z); 运行结果:

8-5以任意位置子图形式绘制出正弦、余弦、正切和余切函数曲线。clc; x=-2*pi:0.01:2*pi; y1=sin(x); y2=cos(x); axes('Position',[0.1,0.6,0.2,0.2]) plot(x,y1); ht=get(gca,'Title');set(ht,'Color','r');title('y=sin(x)') hc=get(gca,'Children'),set(hc,'Color','b','LineWidth',1.5) axes('Position',[0.6,0.6,0.2,0.2]) plot(x,y2,'r'); ht=get(gca,'Title');set(ht,'Color','r');title('y=cos(x)') axes('Position',[0.1,0.1,0.2,0.2]) fplot('tan(x)',[-1.5,1.5]); ht=get(gca,'Title');set(ht,'Color','r');title('y=tan(x)') axes('Position',[0.6,0.1,0.2,0.2]) fplot('cot(x)',[0,1,3]); ht=get(gca,'Title');set(ht,'Color','r');title('y=cot(x)')

最新Matlab基础及应用的教学大纲资料

《Matlab基础及应用》教学大纲 执笔人:肖顺根课程编号: 总学时数:36学时(其中授课18学时,实验18学时) 学分:2 学分 一、本课程的地位、作用与任务: 本课程是电气工程及自动化专业基础的必修课程。是电气工程及自动化专业的重要实践性课程。通过本课程的学习,可以使得本专业学生掌握Matlab这一现代的科学计算和系统仿真语言的基本编程思想和方法,并利用Matlab对所学基础课程进行上机模拟实验和数值计算,从而通过Matlab编程实验来验证和巩固所学的数学和工程理论。 二、课程教学基本要求 MATLAB是MathWorks公司推出的一套高性能的数值计算和可视化软件,可以解决工程、科学计算和数字信号处理、通信、数学等学科中许多问题。本课程主要介绍MATLAB语言的应用环境、调试命令,各种基本命令和高级操作命令,绘图功能函数,循环和条件分支等控制流语句。课程最后简介MATLAB语言中的几个主要工具箱,为后续的专业课程提供有力的工具。本课程以讲课为主,结合上机实验,使学生通过编程实例掌握MATLAB语言的编程基础与技巧。三、先修课程的要求 《高等数学》、《线性代数》、《自动控制原理》等。 四、教学方法及建议 1、本课程是电气工程及其自动化专业的实践性基础课程,应采用多媒体教学方式,结合Matlab仿真软件进行课堂演示。力求生动有趣,并随时通过提问等方式调动学生的学习积极性。 2、MA TLAB软件在电气工程及自动化专业中的应用非常广泛和实用,应结合《自动控制原理》知识尽可能发挥MATLAB软件的功效。 五、教学要求的层次 了解Matlab 的特点; 理解Matlab 的数值计算、程序设计、绘图功能及在通信工程的科学计算和建模中的应用; 掌握Matlab语言的基本编程思想和方法。 六、教学内容、要求及学时安排 第一单元MATLAB 概述(2学时) 1. Matlab 的特点、绪论 2. Matlab 快速入门 要求:了解MATLAB的主要功能,熟悉MATLAB命令窗口及文件管理,MATLAB帮助系统。掌握命令行的输入及编辑,用户目录及搜索路径的设置。 重点和难点:命令行的输入,用户目录及搜索路径的设置 第二单元MATLAB数据和数值计算(4学时) 1.矩阵的生成 (1)标量的赋值和计算 (2)向量的赋值和计算 (3)矩阵的生成 2.数组运算 (1)数组的加法和减法运算

《matlab基础及其应用教程》笔记

《matlab基础及其应用教程》笔记 前提:已经学过matlab很久了,但是将近半年没有再碰,打算接下去继续学习matlab,并在帮忙增加国内关于matlab资料较少的simmechanics物理建模仿真部分,因此继续开始学matlab,打算重新看基本基础的书回顾一下,并做简单笔记。 plus:括号内是自己加的,自己的经验以及想法等 第一章:基础 1、b='Hi,Miss Black';可以直接用于表示字符串 2、cd可以设置路径;和DOS系统下一样,但是不够直观,推荐直接使用GUI的路径设置 3、clf:清除图像内容;cla:清除坐标内容(GUI会用到);clc,clear 4、lookfor:寻找函数名称;doc:直接打开某个函数的帮助文档(doc quad:打开积分的帮助文档) 第二章:matlab语言基础 1、matlab主要数据类型.pdf(matlab的数据类型,十分重要) 2、&与&&区别:&左右两边都比较;&&只要左边不对,就不进行比较(表示右边有错误也不会管) 3、各种函数比较的最好加上(),以防止因为优先级的问题而被吞 4、线性等分:linspace;对数等分:logspace 5、矩阵标志:①,单下标;②,多下标;③,:表示整行或者整列;④,删除直接使用[]; 6、cat:行/列拼接;reshape:矩阵变换;repmat:行列拼接; 7、一般的函数:matlab函数(自己总结).xls里面有 8、多维数组(三维,图片数组) 第三章:matlab运算 1、polyadd:相加;conv:相乘/卷积;deconv:相除 2、polyval:多项式带入求解;polyvalm:矩阵带入求解 3、roots:多项式求根; 4、poly2sym:多项式转为字符形式;poly:构造多项式 5、interpX:插值与拟合(和《数值计算方法》对应,X不同而采取不同的差值拟合方法) 6、polyfit:生成多项式拟合(偶尔两端会出现Roung现象,使整个设计出现偏差) 7、diff:微分;quad:积分 8、cumsum:积分矩形计算法;trapz:积分梯形计算法;quad:辛普森积分法;quad1:科茨积分法; 9、rref:解矩阵方程 10、jacobi:雅克比迭代法;gseidel:Gauss-Seidel 迭代法; 11、sparse:稀疏矩阵;full:全矩阵;spdiags:对角稀疏矩阵 12、spalloc:分配存储空间(对稀疏矩阵而言) 13、Euler:欧拉法解微分(1:前插;2:后插) 14、ode23:二三阶龙科库塔公式解偏微分;ode45:三四阶龙科库塔公式 第四章:结构数组与细胞数组(感觉暂时用到比较少,所以只是简单浏览了一下) 1、结构数组和C语言的一样,后面加. 2、或者使用struct构建结构数组

MATLAB快速入门第一章

。下面将对菜单进行介绍。 图1-8 1.3.1 M文件 M文件有两种类型:文本M文件和函数M文件。 (一)文本M文件 一个比较复杂的程序常常要作反复的调试,这时你不妨建立一个文本文件并把它储存起来,可以随时调用进行计算。建立文本文件可以在File菜单中选择New,再选择M-file,这时MATLAB将打开一个文本编辑窗口,在这里输入命令和数据。储存时文件名遵循MA TLAB变量命名的原则,但必须以m 为扩展名,其一般形式为 < M文件名>.m 如juzhen.m, pp.m等。 值得注意的是,文本M文件中的变量都是全局变量,在执行过程中, 文本M 文件中的命令可以使用目前工作区中的变量,它所产生的变量也将成为工作区的一部分。例如我们把下面的程序保存为名为budijifen1.m的文本M文件:function budijifen1 x=-4*pi:0.014*pi;a=1; for C=-3:3 y =1/2*(-sin(a*x)+a*x)/a+C plot(x,y) hold on end grid hold off xlabel('自变量 X') ylabel('因变量 Y') title('不定积分的积分曲线族') legend('不定积分的积分曲线族') 然后在MA TLAB工作窗口中输入文件名:

>> budijifen1 运行后屏幕显示计算结果(略)和图形(见图1-9)。 再如,将下面的一个生成矩阵的程序保存为名为juzhen.m 的文本M 文件: for i=1:k for j=1:n b(i,j)=7/(2*i+3*j-6); end end a=rats(b) 然后在MA TLAB 工作窗口中输入: >> k=3;n=4; juzhen,b 图1-9 名为budijifen1.m 的文本M 文件的图形 运行后屏幕显示运行结果如下: a = -7 7/2 7/5 7/8 7 7/4 1 7/10 7/3 7/6 7/9 7/12 b = -7.0000e+000 3.5000e+000 1.4000e+000 8.7500e-001 7.0000e+000 1.7500e+000 1.0000e+000 7.0000e-001 2.3333e+000 1.1667e+000 7.7778e-001 5.8333e-001 (二) 函数M 文件 函数M 文件是另一类M 文件,我们可以根据需要建立自己的函数文件,它们能够像库函数一样方便地调用,从而极大地扩展MA TLAB 的能力。如果对于一类特殊的问题,建立起许多函数M 文件,就能最终形成独立的工具箱。 函数M 文件的第一行有特殊的要求,其形式必须为 function <因变量>= <函数名>(<自变量>) 其他各行为从自变量计算因变量的语句,并最终将结果赋予因变量。而这个M 文件的文件名必须是<函数名>.m 。下面给出函数文件的一个简单例子。 如果我们要在某个程序中要调用函数π= 21y e 22x -,就必须建立并保存下面的名为fun.m 的函数M 文件。 function y = fun(x)

MATLAB基础及应用教程

第4章程序设计 在前面我们已经看到,MATLAB不但可以在命令窗直接输入命令并运行,而且还可以生成自己的程序文件,这就是我们通常说的一类以M为后缀的M文件,本章我们就来研究这类文件的形成方法。 M文件可分分为两大类,一是命令式M文件(也称为脚本文件,script),二是函数式M 文件(function)。两类文件的区别在于: (1)命令式文件可以直接运行,函数式文件不能直接运行,只能调用。 (2)命令式文件运行时没有输入输出参量,函数式文件在调用时需要进行输入输出参量设置。 (3)命令式文件运行中可以调用工作空间的数据,运行中产生的所有变量为全局变量。 (4)函数式文件不能调用工作空间的数据,运行中产生的所有变量为局部变量。命令式文件运行中产生的所有变量为全局变量,可以调用和存储到工作空间的数据。 4.1 MATLAB的程序文件-M文件 4.1.1 脚本文件(Scripts) 当我们需要在命令窗进行大量的命令集合运行时,直接从命令窗口输入比较麻烦,这时就可以将这些命令集合存放在一个脚本文件(Scripts)中,运行时只需要输入其文件名就可以自动执行这些命令集合。需要注意的是,脚本文件运行所产生的变量都驻留在MATLAB 的工作空间中,同时脚本文件也可以调用工作空间中的数据。因此,脚本文件所涉及的变量是全局变量。前几章所涉及到的M文件都是这类脚本文件。 编辑一个脚本文件可以直接在命令窗口的左上角打开编辑窗进行编辑。 4.1.2 函数文件(function) 函数式文件(function)的构成 (1)函数定义行: Function [输出参量]=gauss(输入参量) (2): 完成函数的功能。 (3)函数说明。 (4)函数行注。 从上面构成的情况看,函数式文件实际上是完成输入参量与输出参量的转换,这样的转换是由函数文件名为gauss的文件来完成的。函数体的功能必须说明清楚输入参量与输出参量的关系。函数说明是用来解释该函数的功能的,函数行注是对程序行进行说明的。上面(1)和(2)是必须的。 【例4-1】分析下面函数文件。 %一个数列,任意项等于前两项之和,输入项数可以给出这个数列

MATLAB基础与应用教程 习题答案 作者 蔡旭晖 刘卫国 蔡立燕 第1-8章答案

第1章 一、思考题 4. (1) B=A(2:5,1:2:5) (2)A(7)=[] (3) A=A+30 (4)size(A) (5) t(find(t==0))=eps (6)t=reshape(x,3,4) (7)abs('matlab') (8)char(93) 5. A=[97,67,34,10;-78,75,65,5;32,5,-23,-59;0,-12,54,7] (1) B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C (2)A(find(A>=50 & A<=100)) 二、实验题 =-74/180*pi;y=-27/180*pi; sin(x*x+y*y)/sqrt(tan(abs(x+y)))+pi =::; exp*a).*sin(a+ =[2,4;,5]; log(x+sqrt(1+x.*x))/2 4. A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0];(1)A*B ans = 129 432 4197 7 -407 -1052

402 591 12489 A.*B ans = 3 -108 134 68 -360 518 783 270 0 (2) A^3 ans = -28917 240246 -4368 137883 -259101 27669 171333 252504 38673 A.^3 ans = 27 157464 8 39304 -91125 343 658503 729000 3375(3)A/B ans = B/A ans = (4)[A,B] ans = 3 5 4 2 1 -2 67

Matlab入门教程3

Matlab入门教程--环境设置 1-5、搜寻路径 在前一节中,test.m所在的目录是d:\mlbook。如果不先进入这个目录,MATLAB就找不到你要执行的M档案。如果希望MATLAB不论在何处都能执行test.m,那麽就必须将d:\mlbook加入MATLAB的搜寻路径(Search path)上。要检视MATLAB的搜寻路径,键入path即可: path MATLABPATH d:\matlab5\toolbox\matlab\general d:\matlab5\toolbox\matlab\ops d:\matlab5\toolbox\matlab\lang d:\matlab5\toolbox\matlab\elmat d:\matlab5\toolbox\matlab\elfun d:\matlab5\toolbox\matlab\specfun d:\matlab5\toolbox\matlab\matfun d:\matlab5\toolbox\matlab\datafun d:\matlab5\toolbox\matlab\polyfun d:\matlab5\toolbox\matlab\funfun d:\matlab5\toolbox\matlab\sparfun d:\matlab5\toolbox\matlab\graph2d d:\matlab5\toolbox\matlab\graph3d d:\matlab5\toolbox\matlab\specgraph d:\matlab5\toolbox\matlab\graphics

d:\matlab5\toolbox\matlab\uitools d:\matlab5\toolbox\matlab\strfun d:\matlab5\toolbox\matlab\iofun d:\matlab5\toolbox\matlab\timefun d:\matlab5\toolbox\matlab\datatypes d:\matlab5\toolbox\matlab\dde d:\matlab5\toolbox\matlab\demos d:\matlab5\toolbox\tour d:\matlab5\toolbox\simulink\simulink d:\matlab5\toolbox\simulink\blocks d:\matlab5\toolbox\simulink\simdemos d:\matlab5\toolbox\simulink\dee d:\matlab5\toolbox\local 此搜寻路径会依已安装的工具箱(Toolboxes)不同而有所不同。要查询某 一命令是在搜寻路径的何处,可用which命令: which expo d:\matlab5\toolbox\matlab\demos\expo.m 很显然c:\data\mlbook并不在MATLAB的搜寻路径中,因此MATLAB找不到test.m这个M档案: which test c:\data\mlbook\test.m 要将d:\mlbook加入MATLAB的搜寻路径,还是使用path命令: path(path, 'c:\data\mlbook'); 此时d:\mlbook已加入MATLAB搜寻路径(键入path试看看),因此MATLAB已经"看"得到test.m:

相关主题
文本预览
相关文档 最新文档