MATLAB期末复习资料

  • 格式:doc
  • 大小:313.00 KB
  • 文档页数:9

百度文库 - 让每个人平等地提升自我

1 1.创建 double 的变量,并进行计算

(1)a=87,b=190,计算 a+b、a-b、a*b

(2)创建 uint8 类型的变量,数值与(1)中相同,进行相同的计算

答案如下:

(1)a=87;b=190;a+b;a-b;a*b

(2) c=uint8(87);d=uint8(190);c+d;c-d;c*d

2.计算

(1)sin60 (2)3e (3)3cos4

答案如下:

(1) sind(60) (2) exp(3) (3) cos(3*pi/4)

3.设2u,3v,计算

(1)4loguvv (2)22uevvu (3)3uvuv

答案如下:

(1) u=2,v=3;ai=4*((u*v)/log(v)) (2) u=2,v=3;a2=(exp(u)+v)^2/(v^2-u)

(3) u=2,v=3;a3=sqrt(u-3*v)/(u*v)

4.计算如下表达式

(1)3542ii (2)sin28i

答案如下:(1) (3-5*i)*(4+2*i) (2) sin(2-8*i)

5.判断下面语句的运算结果

(1)4 < 20 (2)4 <= 20 (3)4 == 20

(4)4 ~= 20 (5)’b’<’B’

答案如下:(1) 4 < 20 (2) 4 <= 20 (3)4 == 20 (4) 4 ~= 20 (5)'b'<'B'

6.设39a,58b,3c,7d,判断下面表达式的值

(1)ab 2)ac (3)&&abbc (4)ad (5)|abc (6)~~d

答案如下:(1) a=39;b=58; c=3;d=7;a>b(2) ab&&b>c (4) a==d

(5) a|b>c

(6)~~d

1. 生成一个33随机矩阵,将其对角形元素的值加1

参考答案:a=rand(3);a=a+eye(3)

2. 生成一个元素值在 1 和 10 之间的33随机矩阵,将其重新排序,使得

(1)每列按照降序排列 (2)每行按照降序排列 “ascend”和“descend”,分别表示升序和降序,默认为升序

参考答案:(1)b=round(rand(3)*10) sort(b,'descend');

(2) sort(b,2,'descend') 百度文库 - 让每个人平等地提升自我

2 3. 令3a,2132X,4567Y,进行幂运算,计算:

(1)Xa (2)aX (3)YX

参考答案:(1)a=3; x=[2,1;3,2]; y=[4,5;6,7]; a.^x (2)x.^a (3)x.^y

4. 生成33随机矩阵,判断其元素是否大于

参考答案:a=rand(3); a>

5. 有3a,4375B,8976C,47128D,进行如下操作

(1)~(aC & B

参考答案:a=3;b=[4,3;7,5];c=[8,9;7,6];d=[4,7;12,8];

(1)~(ac&b

1. 计算下列积分

(1)1351xxxdx (2)101sincosxxdx (3)622xedx

(4)10414xdxx (5)1010211sin4xyydxdyx

答案如下:

(1)f=@(x)x+x.^3+x.^5 q=quad(f,-1,1)

(2)f=@(x)sin(x)+cos(x) q=quad(f,1,10)

(3) f=@(x)exp(x/2) q=quad(f,2,6)

(4) f=@(x)x./((x.^4)+4) q=quad(f,1,10)

(5) f=@(x,y)sin(y)*(x+y)./(x.^2+4) q=dblquad(f,1,10,1,10)

2. 求下列函数的解,并绘制图形

(1)5xyex,初始点为8x

答案如下:f=@(x)exp(x)-x.^5 x=fzero(f,8) limits=[0 10 1 5]

fplot(f,limits) %绘图x范围为0到10 y范围为1到5

数学函数图象的绘制 fplot(fun,limits),y = f(x);参数 limits用于定绘制图象的范围。limits 是一个向量,用于指定 x 轴的范围,格式为[xmin xmax]。limits 也可以同时指定 y

轴的范围,格式为 [xmin xmax ymin ymax]。fun 可以为 MATLAB 函数的 M 文件名,可以是包含变量 x 的字符串,该字符串可以传递给函数 eval,还可以是函数句柄。

MATLAB使用函数 fzero() 来求一元函数的零点。寻找一元函数零点时,可以指定一个初始点,或者指定一个区间。当指定一个初始点时,此函数在初始点附近寻找一个使函数值变号的区间,如果没有找到这样的区间,则函数返回 NaN。该函数的调用格式为:

x = fzero(fun,x0),x = fzero(fun,[x1,x2]):寻找 x0 附近或者区间 [x1,x2] 内 fun 的零点,返回该点的 x 坐标;

inv(A) 来实现矩阵逆的求解。rank(A)可得到矩阵A的秩。 矩阵的行列式用函数 det 求解。调用格式为 det(A)。在 MATLAB 中多项式用一个行向量表示,向量中的元素为该多项式的系数,按照降序排列。如多项式 可以表示为向量 3219743xxx百度文库 - 让每个人平等地提升自我

3 p=[9 7 4 3]。Roots用于多项式求根,如roots(p)。MATLAB 中直接创建函数,如语句:

fh = @(x)1./(.^2 + + 1./(.^2 + -6。 q = quad(fun,a,b),采用递归自适应方法计算函数 fun 在区间【a,b】上的积分。q = dblquad(fun,xmin,xmax,ymin,ymax),函数的参数分别为函数句柄、两个自变量的积分限,返回积分结果。

c = complex(a,b),返回结果 c 为复数,其实部为 a,虚部为 b。

1. 编制一个脚本,查找给定字符串中指定字符出现的次数和位置

% find the times and places of the specified letter in the string

letter = 'a'; % The specified letter to be searched for

string = 'China'; % The specified tring to be searched

places = findstr(S,A); % The places of the letter

ntimes = length(places)

2.编写一个脚本,判断输入字符串中每个单词的首字母是否为大写,若不是则将其修改为大写,其他字母为小写

str = 'this is the string to be converted';

nlength = length(str);

for k=1:nlength

if (k==1 || isspace(str(k-1))) && (str(k)<='z' && str(k)>='a')

str(k) = char(double(str(k)) - 32);

end

end

disp(str);

3. 创建一个结构体,用于统计学生的情况,包括学生的姓名、学号、各科成绩等。然后使用该结构体对一个班级的学生成绩进行管理,如计算总分、平均分、排列名次等。

structtest=struct('name',{},'number',{},'scores',{})

1.创建符号表达式sinfxxx

答案如下:

f=sym('sin(x)+x')

2.计算习题 1 中表达式在0x、/4x、2x处的值

答案如下:subs(0) subs(pi/4) subs(2*pi)

3.设x为符号变量,421fxxx,32458gxxxx,试进行如下运算(1)fxgx(2)fxgx(3)对fx进行因式分解

(4)求g以fx为自变量的复合函数

答案如下:f=sym('x^4+x^2+1');g=sym('x^3+4*x^2+5*x+8')

(1)f+g (2)f*g (3)factor(f) (4)compose(g,f)

4.合并同类项

(1)22325325xxxx

答案如下:S=sym('3*x-2*x^2+5+3*x^2-2*x-5') collect(S) 百度文库 - 让每个人平等地提升自我

4 5.因式分解(1)将 7798666 进行因数分解,分解为素数乘积的形式

(2)8-2m+512 (3)23223a(x-y)-4b(y-x)

答案如下:(1)factor(7798666)(2)factor(sym('-2*m^8+512'))

(3)factor(sym('3*a^2*(x-y)^3 - 4*b^2*(y-x)^2'))

6.绘制下列函数的图像

(1)2sinfxxx,0,2 (2)3221fxxx,2,2

答案如下:(1) f = sym('sin(x) + x^2');ezplot(f,[0,2*pi])

(2)f = sym('x^3 + 2*x^2 + 1');ezplot(f,[-2 2])

7.计算下列各式

(1)0tansinlim1cos2xxxx

(2)322sinyxxx,求y

(3)2lnfxy,求/fx,/fy,2/fxy

(4)cos(43)xdx,60cos(43)xdx

答案如下:

(1) limit(sym('(tan(x) - sin(x))/(1-cos(2*x))'))

(2) y = sym('x^3 - 2*x^2 + sin(x)');diff(y)

(3)syms x y f = log(x+y^2); fx = diff(f,x) fy = diff(f,y)

f2xy = diff(fx,y)

(4)syms x f = cos(4*x+3); int(f) int(f,0,pi/6)

8.计算下列各式(1)13nnn(2)sinx在 0 附近的Taylor 展开

答案如下:(1)symsum(sym('(3/n)^n'),1,inf) (2) taylor(sym('sin(x)'))

9.求解线性方程组231321xyxy

答案如下:

[x,y] = solve(sym('2*x+3*y=1'),sym('3*x+2*y=-1'))