matlab练习题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、填空题
1.设有程序
A=[2,0,1,0;1,0,1,5;0, 6 ,2, 3];B=[1,2,-1;1,3,1];C=A(1:3,[1,2]);
D=size(C)- length(B(2,:));F= C.*B ’
将下列命令的运行结果填在横线上
D = ; F= .
2. A=[2,3,2,1;1,2,2,1; 1,2,3,-2];
A1=sum(A>A(2,1));A(2,:)=[],A2=A.^2-4
A1= ; A2= ;
3.P=[1,2,5,4;2,2,1,3];max(P,[ ],1)= ;mean(P,2)= .
二、试编写计算程序画出曲线与曲面图形
.
22,22,)1((2).);20(cos sin (1).223322≤≤-≤≤-++=≤≤⎪⎩⎪⎨⎧==--y x y x e x z t t y t x y x π
%1 %2
t=0:0.1: 2*pi; [x,y]=meshgrid(-2:0.1:2);
x= sin(t).^3; z=(x.^2+1).* exp(-x.^2- y.^2+)+x .^2.*y; y= cos (t).^3; mesh(x,y,z)
plot(x,y)
三、(本题满分*分)编写程序解决下列问题:
(1)试产生100⨯4阶矩阵使其元素在0—100之间的随机整数,可将此矩阵理解为100名同学的四门课程(课程1, 课程2, 课程3, 课程4)的成绩.
(2)计算出每门课程和每位同学的平均成绩;
(3)统计出总的优秀人次(90分及以上为优秀);
(4)统计出四门课程成绩至少有两门课程不及格的人数.
解:(1) a=fix((100-0+1)*rand(100,4));
(2) mean(a) mean(a,2)
(3)sum(sum(a>=90,2)==4)
(4)sum(sum(a<60,2)>=2)
四、(本题满分*分)
).50,20(]2,0[)2())
,(1:(;
)1(,sin )1()(11
==-=∑=+n n x fun y function kx k x f n
k k 分别取内图形用子图画出该函数在程序的第一句为返回该函数并保存试编写函数式文件程序设π
(1). function y=fun1(x,n) (2). x=0:0.1:2*pi;
y=0; y1= fun1 (x,20);
for k=1:n y2= fun1 (x,50);
y=y+ ((-1)^(k+1)*sin(k*x))/k; subplot(2,1,1),plot(x,y1)
end subplot(2,1,2),plot(x,y2)
y
五、(本题满分*分)
试利用微分方程的数值解法写出下列微分方程的求解步骤和MATLAB 程序.
0)0(,2)0(,3='==-'+''x x t x x t x .(t 的变化区间为[0,10]).
第一步:先将高阶微分方程转化为一阶微分方程组:
选择状态变量x x x x ='=21,,则原方程化为
2)0(,0)0(.,32112
211==⎩⎨⎧='++-='x x x x t x tx x
第二步:建立函数文件
function dxdt = fun2(t,x)
dxdt = [-3*t*x(1)+ x(2)+t; x(1)];
第三步:求解微分方程,命令如下:
[t,x]=ode45(@fun2,[0,10],[0;2])
⎪⎩⎪⎨⎧=-++=--++03320224:.2122212212221x x x x x x x x x fsolve 组求解下面的非线性方程函数以及符号运算功能用七
解一:function y=fc(x)
y(1)=4*x(1).^2+x(2).^2+2*x(1).*x(2)-x(2)-2
y(2)=2*x(1).^2+x(2).^2+3*x(1).*x(2)-3
y=[y(1) y(2)];
x0=[1 1];
fsolve(@fc,x0)
八.已知1000,2141211=++++=n n
y ,分别用for 循环和直接用sum 计算y 的值,写出程序.
(1)y=1;
for i=1:1000;
y=y+1/(2*i);
end
y
(2)i=1:1000;
y=1+sum(1./(2*i))