中国海洋大学MATLAB期末复习2014_答案_第1页
中国海洋大学MATLAB期末复习2014_答案_第2页
中国海洋大学MATLAB期末复习2014_答案_第3页
中国海洋大学MATLAB期末复习2014_答案_第4页
中国海洋大学MATLAB期末复习2014_答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、计算题:1. 设,计算:(1) ;(2) ;(3) 参考答案: u=2; v=3;(1) 4*u*v/log(v)ans = 21.8457(2) (exp(u)+v)2/(v2-u)ans = 15.4189(3) sqrt(u-3*v)/(u*v)ans = 0 + 0.4410i2. 计算cos 60- cos(pi/3)-(9-2(1/2)(1/3)ans = -1.46493. 计算下列积分。(1) (2) (3) 参考答案:(1) f = (x)x+x.3+x.5; q = quad(f,-1,1)q = 2.2204e-016(2) f5 = (x,y)sin(y).*(x+

2、y)./(x.2+4); q = dblquad(f5,1,10,1,10)q = 5.5254(3) f = inline(sin(2*(x+pi/3)+cos(x+pi/6),x); Q = quad(f,0,2*pi)Q = 6.7851e-0094. 创建一个含10000个元素的数组,其值依次为1到10000之间的整数。用逻辑数组计算大于5000的元素的平方根。a = 1:10000; %Declare array ab = a 5000; %Create maska(b) = sqrt(a(b); %Take square root5. 对进行因式分解参考答案: factor(sym

3、(3*a2*(x-y)3 - 4*b2*(y-x)2) ans = (x-y)2*(3*a2*x-4*b2-3*a2*y)6. 求解线性方程组 A=3 4 -7 -12; 5 -7 4 2; 1 0 8 -5; -6 5 -2 10A = 3 4 -7 -12 5 -7 4 2 1 0 8 -5 -6 5 -2 10 B=4;-3;9;-8B = 4 -3 9 -8 x=ABx = -1.4841 -0.6816 0.5337 -1.24297. 计算下列各式(1)(2),求(3),求,(4),参考答案:(1) limit(sym(tan(x) - sin(x)/(1-cos(2*x) ans

4、 = 0(2) y = sym(x3 - 2*x2 + sin(x); diff(y) ans = 3*x2-4*x+cos(x)(3) f = x*y*log(x+y); fx = diff(f,x) fx = y*log(x+y)+x*y/(x+y) fy = diff(f,y) fy = x*log(x+y)+x*y/(x+y) f2xy = diff(fx,y) f2xy = log(x+y)+y/(x+y)+x/(x+y)-x*y/(x+y)2(4) syms t y = log(1+t); int(y) ans = log(1+t)*(1+t)-t-1 int(y,0,27) an

5、s = 56*log(2)+28*log(7)-278. 已知变量:A=ilovematlab;B=matlab,请找出:(1)B在A中的位置;(2)把B放在A后面。解:Lb=strfind(A,B)Lb= 6Le=Lb+length(B)-1Le= 119. 炼钢基本上是一个氧化脱碳的过程,钢液中原含碳量多少直接影响到冶炼时间的长短,下表是某平炉的熔钢完毕碳(x)与精炼时间(y)的生产记录:X(0.01%)134150180104190163200Y(min)135168200100215175220现希望从上表的数据中找出x与y变化规律的经验公式,用多项式进行曲线拟合,并给出相应的曲线。x

6、=104 134 150 163 180 190 200; y=100 135 168 175 200 215 220; f=polyfit(x,y,2)f = -0.0016 1.7666 -68.3091 plot(x,y,o,x,polyval(f,x)x与y的关系式为:y=-0.0016*x2+1.7666*x-68.309110. 有如下数据:X11.11.21.31.4y1.000001.233681.552711.993722.61170利用本章介绍的几种插值方法对其进行插值,得到每隔0.05的结果。编写脚本文件,文件内容为:% Interpolation using the f

7、our methodsx=1 1.1 1.2 1.3 1.4;y=1.00000 1.23368 1.55271 1.99372 2.61170;length_of_x=length(x);scalar_x=x(1):0.05:x(length_of_x);length_of_sx=length(scalar_x);y_nearest = zeros(length(scalar_x),1);y_linear = zeros(length(scalar_x),1);y_spline = zeros(length(scalar_x),1);y_cubic = zeros(length(scalar

8、_x),1);for i=1:length_of_sx y_nearest(i)=interp1(x,y,scalar_x(i),nearest); y_linear(i) =interp1(x,y,scalar_x(i),linear); y_spline(i) =interp1(x,y,scalar_x(i),spline); y_cubic(i) =interp1(x,y,scalar_x(i),cubic);endsubplot(2,2,1),plot(x,y,*),hold on,plot(scalar_x,y_nearest),title(method=nearest);subpl

9、ot(2,2,2),plot(x,y,*),hold on,plot(scalar_x,y_linear),title(method=linear);subplot(2,2,3),plot(x,y,*),hold on,plot(scalar_x,y_spline),title(method=spline);subplot(2,2,4),plot(x,y,*),hold on,plot(scalar_x,y_cubic),title(method=cubic);得到结果为: 二、绘图题:1. 绘制双曲抛物面:,参考答案: X,Y = meshgrid(-16:0.4:16,-4:0.1:4);

10、 Z = X.2/16 - Y.2/4; surf(X,Y,Z)2. 绘制函数在,上的表面图参考答案: syms x y z = 1/(2*pi)*exp(-(x2+y2); ezsurf(x,y,z,-3,3,-3,3);3. 求函数cos(x)的5次拟合多项式p(x),并绘制出cos(x)和p(x)在0,2pi区间的函数曲线。4. 编写MATALAB程序,完成下列任务:(1)在区间0,4*pi上均匀地取100个点构成向量;(2)分别计算函数y1=sin(t)与y2=2cos(2t)在向量t处于区间0,4*pi上的函数值;(3) 在同一图形窗口绘制曲线y1=sin(t)与y2=2cos(2t

11、),要求y1曲线为黑色点画线,y2曲线为红色虚线圆圈;并在图中恰当位置标注两条曲线的图例;给图形加上标题“y1 and y2”。参考答案:(1) t=linspace(0,4*pi,100);(2) y1=sin(t); y2=2*cos(2*t);(3) plot(t,y1,k-.); text(1.2,sin(1.2)-0.1,y1rightarrow,Fontsize,12); hold on; plot(t,y2,r-o); text(4.8,1.5,y2rightarrow,Fontsize,12); title(y1 and y2);5. 编写程序,实现功能为:创建图形窗口,并且设

12、置其默认背景为黄色,默认线宽为 4 个像素,在该窗口中绘制椭圆 的图像,其中的和任选。参考答案:figure(Color,y);set(gca,DefaultLineLineWidth,4);a = 4; b = 3;x = linspace(-a,a,100);y1 = sqrt(1-x.2/(a2)*b2);y2 = -sqrt(1-x.2/(a2)*b2);h1=line(x,y1);hold on;h2=line(x,y2);set(h1,LineWidth,default);set(h2,LineWidth,default);三、编程题: 1. 编写一个脚本,判断输入字符串中每个单词

13、的首字母是否为大写,若不是则将其修改为大写,其他字母为小写。参考答案:脚本文件内容为:str = this is the string to be converted; nlength = length(str);for k=1:nlength if (k=1 | isspace(str(k-1) & (str(k)=a) str(k) = char(double(str(k) - 32); endenddisp(str);2. 在MATLAB中使用一个循环确定:如果用户最初在一个银行帐户中存储$10000,并且在每年的年终再存储$10000(银行每年支付6%的利息),那么账户上要积累$100

14、0000要需要多长时间。参考答案: 33年。n=0;z=10000;y=1+0.01*6;while z=1000000z=z*y+10000;n=n+1;enddisp(n)3. 编写matlab语句,计算的值已知t从-9到9每隔0.5取一次值。运用循环和选择语句进行计算。4. 编制程序,从键盘输入一系列的测量数,计算它们的平均值以及标准差。这些数可以是正数,负数或0。要求给出输入值的个数,然后用for 循环读取所有数值。% Initialize sumssum_x = 0; sum_x2 = 0;% Get the number of points to input.n = input(E

15、nter number of points: );% Check to see if we have enough input data.if n 2 % Insufficient datadisp (At least 2 values must be entered.);else % we will have enough data, so lets get it.% Loop to read input values.for ii = 1:n% Read in next valuex = input(Enter value: );% Accumulate sums.sum_x = sum_x + x;sum_x2 = sum_x2 + x2;end% Now calculate s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论