MATLAB课后题答案整理 联系客服

发布时间 : 星期五 文章MATLAB课后题答案整理更新完毕开始阅读a3d8c550804d2b160a4ec005

(1)A=0; n=100 for i=1:n A=1/n/n+A; end (2)(2?24?46?6(2n)(2n)?)()()???()???(?) 1?33?55?7(2n?1)(2n?1)2(2)A=1; n=10000; for i=1:n A=(2*n*n*2)/((2*n-1)*(2*n+1))*A; end 4.已知y?f(40)2(1)当f(n)?n?10ln(n?5)时,y的值是多少?

f(30)?f(20)(2)当f(n)?1?2?2?3?3?4?????n?(n?1)时,要的值是多少? f1.m代码如下: function m=f1(n) m=n+10*log(n^2+5); f2.m 代码如下: function m=f2(n) m=0; for i=1:n

m=m+i*(i+1); end

然后在命令文件p3_11.m中调用f1.m和f2.m p3_11.m代码如下:

y1=f1(40)/(f1(30)+f1(20)); y2=f2(40)/(f2(30)+f2(20)); y1 y2

5.先用函数的递归调用定义一个函数文件求

1005010?ii?1nm,然后调用该函数文件求

?k??k??2k?1k?11。 kk?1函数文件factor1.m代码如下:

function f=factor1(k) if k==1 f=1; else

f=factor1(k-1)+k; end

函数文件factor2.m代码如下: function f=factor2(k) if k==1 f=1;

else

f=factor2(k-1)+^2; end

函数文件factor3.m代码如下: function f=factor3(k) if k==1 f=1; else

f=factor3(k-1)+1/k; End

6.编写程序,建立向量N=[1,2,3,4,5],然后利用向量N产生下列向量:(1)2,4,6,8,10 (2)1/2,1,3/2,2,5/2 (3)1,1/2,1/3,1/4,1/5 (4)1,1/4,1/9,1/16,1/25

N=[1,2,3,4,5] A=N.*2 B=N./4 C=1./N D=1./(N./2)./(N./2)/4 7.编写程序,产生20个两位随即整数,输出其中小于平均值的偶数。 B=0

for i=1:20

A(i)=fix((99-10+1)*rand(1)+10); B=A(i)+B; end B=B/20 for i=1:20

if A(i)

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

111???????(?) 357411111(2)???????n????(?)要求分别用循环结构和向量运算(使用sum函数)

4166443(1)1?(1) A=1

for i=2:100

A=(-1)^(i+1)*1/(2*n-1)+A; end A (2) A=0

for i=1:1000

A=1/((4)^i)+A; end A

9.编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用该函数。 function [m,n]=chengji(A,B) m=A.*B; n=A*B;

然后在命令文件p3_12.m中调用chengji.m文件 a=[1 2 3;4 5 6;7 8 9] b=[-1 0 1;1 -1 0;0 1 1] [m,n]=chengji(a,b); disp('a.*b='); disp(m); disp('a*b= '); disp(n); 第四章

x322y?x?1.绘制下列曲线:(1)3! (2)x?2y?64

(1)x=-12:0.001:12; y=x-x.^3/6; plot(x,y); xlabel('x轴'); ylabel('y轴');

title('Y=X-X^3/3!');

(2)ezplot('x^2+2*y^2-64',[-8,8,-8,8]) xlabel('x轴'); ylabel('y轴'); axis equal

title('x^2+2y^2=64'); 2.y?1,???t??,在同一图形窗口采用子图的形式绘制条形图、阶梯图、杆图和对?11?e数坐标图等不同图形,并对不同图形加标注说明。 t=-pi:0.1:pi;

y=1./(1+exp(-t)); plot(t,y);

subplot(2,2,1) stairs(t,y) subplot(2,2,2) bar(t,y)

subplot(2,2,3) stem(t,y)

subplot(2,2,4) fill(t,y, 'y')

x?e?t/20cost3.绘制下列三维图形。(1)y?e?t/20sint,0?t?2?. (2)z?5,|x|?5,|y|?5。并着色

z?tt=0:pi/100:2*pi; x=exp(-t/20).*cos(t); y=exp(-t/20).*sin(t); z=t;

plot3(x,y,z)

(2) [x,y]=meshgrid(-5:5); z=ones(11);

surf(x,y,z);shading interp;

4.在统一坐标轴回话多条二维曲线有哪些方法?

plot

plot

1e5.绘制下列曲线:(1)y?2?(1)

x=1:0.1:10 a=exp((x.^2)/2) y=a.*1/2/pi plot(x,y) (2)

t=-pi:0.1:2*pi X=t.*sin(t) Y=t.*cos(t) plot(X,Y)

?x22 (2)

x?tsinty?tcost

6.在统一坐标轴中绘制下列两条曲线并标注两曲线交叉点,(1)y?2x?0.5

x?sin(3t)cost(2),0?t??.

y?sin(3t)sintt=0:0.00005:pi; x=sin(3*t).*cos(t); y1=2*x-0.5;

y2=sin(3*t).*sin(t); plot(x,y2,x,y1); hold on

k=find(abs(y2-y1)<1e-4); x1=x(k); y3=2*x1-0.5; plot(x1,y3,'rp')