Matlab期末复习.docx
- 文档编号:10375781
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:15
- 大小:63.94KB
Matlab期末复习.docx
《Matlab期末复习.docx》由会员分享,可在线阅读,更多相关《Matlab期末复习.docx(15页珍藏版)》请在冰点文库上搜索。
Matlab期末复习
》》A=1:
9;B=10-A;
L1=A==B
L2=A>3&A<7
L4=find(A>3&A<7)
L1=
000010000
L2=
000111000
L4=
456
》》x=linspace(0,4,3);
y=0.5*x;
stem(x,y);
axis([05-13]);
title('A');text(2,1.2,'y=0.5*x')
》》x=sym('x');
y=x+1;
int(x)
diff(y)
symadd(x,y)
ans=
x^2/2
ans=
1
》》ch='ABCpiEF';
k=ch(4:
5)
rev=ch(end:
-1:
1)
k1=[k,sin(k)];
k2=eval(k1)
k=
pi
rev=
FEipCBA
》》A=[1,2,3;4,5,6];
a=A(3)
b=sub2ind(size(A),2,2)
c=A(1:
2,2:
3)
d=A(:
)
a=2b=4c=[23;56]
d=[142536]
》》A=[1,2,;3,4];
B=eye
(2)
a=A*B
b=A.*B
c=A/B
B=[10;01]a=[13;24]b=[10;04]c=[12;34]
>>x=[0,1,0,2,0,3,0,4];
fork=1:
8
ifx(k)==0
x(k)=k;
else
x(k)=2*k+1;
end
end
disp(x)
1539513717
三、2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。
其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E。
要求:
(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
score=input('score=');
ifscore<=100&score>=0
switchfix(score/10)
case{9,10}
grade='A';
case{8}
grade='B';
case{7}
grade='c';
case{6}
grade='D';
otherwise
grade='E';
end
grade
else
disp('错误:
输入的成绩不是百分制');
end
四、4.已知
求f1~f100中:
(1)最大值、最小值、各数之和。
(2)正数、零、负数的个数。
fori=1:
100
ifi==1
f(i)=1;
elseifi==2
f(i)=0;
elseifi==3
f(i)=1;
else
f(i)=f(i-1)-2*f(i-2)+f(i-3);
end
end
max(f)
min(f)
sum(f)
length(find(f>0))
length(find(f==0))
length(find(f<0))
五、5.已知
(1)当f(n)=n+10ln(n2+5)时,求y的值。
(2)当f(n)=1×2+2×3+3×4+...+n×(n+1)时,求y的值。
函数文件:
functionf1=g(n)
f1=n+10*log(n*n+5);
命令文件:
y=g(40)/(g(30)+g(20))
函数文件functionf2=p(n)
f2=0;
fori=1:
n
f2=f2+i*(i+1);
end
命令文件:
y=p(40)/(p(30)+p(20))
六、2.已知y1=x2,y2=cos(2x),y3=y1×y2,完成下列操作:
(1)在同一坐标系下用不同的颜色和线型绘制三条曲线。
(2)以子图形式绘制三条曲线。
(3)分别用条形图、阶梯图、杆图和填充图绘制三条曲线。
%
(1)
x=linspace(-2*pi,2*pi,100);
y1=x.^2;
y2=cos(2*x);
y3=y1.*y2;
plot(x,y1,'b-',x,y2,'r:
',x,y3,'y--');
text(4,16,'\leftarrowy1=x^2');
text(6*pi/4,-1,'\downarrowy2=cos(2*x)');
text(-1.5*pi,-2.25*pi*pi,'\uparrowy3=y1*y2');
%
(2)
x=linspace(-2*pi,2*pi,100);
y1=x.^2;
y2=cos(2*x);
y3=y1.*y2;
subplot(1,3,1);%分区
plot(x,y1);
title('y1=x^2');%设置标题
subplot(1,3,2);
plot(x,y2);title('y2=cos(2*x)');
subplot(1,3,3);
plot(x,y3);
title('y3=x^2*cos(2*x)');
%(3)
x=linspace(-2*pi,2*pi,20);
y1=x.^2;
subplot(2,2,1);%分区
bar(x,y1);
title('y1=x^2的条形图');%设置标题
subplot(2,2,2);
stairs(x,y1);
title('y1=x^2的阶梯图');
subplot(2,2,3);
stem(x,y1);
title('y1=x^2的杆图');
subplot(2,2,4);
fill(x,y1,'r');%如果少了'r'则会出错
title('y1=x^2的填充图');
注:
蓝b绿g红r青c品红m黄y黑k白w;实线-虚线:
点划线-.双划线--
条形图bar阶梯图stairs杆图stem填充图fill
有一个函数f=(t+1)*(t+1)-2t,
(1)化简
(2)求3种变换
sym('x')
f=(x+1)^2-2*x;
g=simplify(f)
F=fourier(g)
L=laplace(g)
Z=ztrans(g)
三、1.求分段函数的值。
用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。
x=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];
y=[];%建立存放所有y值的矩阵
forx0=x
ifx0<0&x0~=-3
y=[y,x0*x0+x0-6];
elseifx0>=0&x0<5&x0~=2&x0~=3
y=[y,x0*x0-5*x0+6];
else
y=[y,x0*x0-x0-1];
end
end
x%输出所有x
y%输出所有y
3.硅谷公司员工的工资计算方法如下:
(1)工作时数超过120小时者,超过部分加发15%。
(2)工作时数低于60小时者,扣发700元。
(3)其余按每小时84元计发。
试编程按输入的工号和该号员工的工时数,计算应发工资。
t=input('t=');
switcht
case{t>120}
w=(t-120)*(1+15/100)*84+120*84;
case{t<60}
w=t*84-700;
otherwise
w=t*84;
end
w
4.设计程序,完成两位数的加、减、乘、除四则运算,即产生两个两位随机整数,再输入一个运算符号,做相应的运算,并显示相应的结果。
a=fix(10+(99-10)*rand(1,2))
x=a
(1);
y=a
(2);
t=input('请输入运算符号:
','s');
ift=='+'
z=x+y;
elseift=='-'
z=x-y;
elseift=='*'
z=x*y;
elseift=='/'
z=x/y;
end
disp([num2str(x),t,num2str(y),'=',num2str(z)])%输出运算结果
四、1.根据
,求π的近似值。
当n分别取100、1000、10000时,结果是多少?
y=0;
n=input('n=');
fori=1:
n
y=y+1/i/i;
end
pi=sqrt(6*y)
2.根据
,求:
(1)y<3时的最大n值。
(2)与
(1)的n值对应的y值。
y=0;n=0;
whiley<3
n=n+1;
y=y+1/(2*n-1);
end
y
n
ify>3
n=n-1;
end
n
3.考虑以下迭代公式:
其中a、b为正的学数。
(1)编写程序求迭代的结果,迭代的终止条件为|xn+1-xn|≤10-5,迭代初值x0=1.0,迭代次数不超过500次。
(2)如果迭代过程收敛于r,那么r的准确值是
,当(a,b)的值取(1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。
a=input('a=?
');
b=input('b=?
');
Xn=1;
Xn1=a/(b+Xn);
n=0;
whileabs(Xn1-Xn)>1e-5
Xn=Xn1;
Xn1=a/(b+Xn);
n=n+1;
ifn==500
break;
end
end
n
Xn1
r1=(-b+sqrt(b*b+4*a))/2
r2=(-b-sqrt(b*b+4*a))/2
1.定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。
函数fushu.M文件:
function[e,l,s,c]=fushu(z)
e=exp(z);
l=log(z);
s=sin(z);
c=cos(z);
命令文件M:
z=input('请输入一个复数z=');
[a,b,c,d]=fushu(z)
2.一物理系统可用下列方程组来表示:
从键盘输入m1、m2和θ的值,求a1、a2、N1和N2的值。
其中g取9.8,输入θ时以角度为单位。
要求:
定义一个求解线性方程组AX=B的函数文件,然后在命令文件中调用该函数文件。
数fc.M文件:
functionX=fc(A,B)
%fcfc是求解线性方程的函数
%AA是未知矩阵的系数矩阵
X=A\B;
命令M文件:
clc;
m1=input('输入m1=');
m2=input('输入m2=');
theta=input('输入theta=');
x=theta*pi/180;
g=9.8;
A=[m1*cos(x)-m1-sin(x)0
m1*sin(x)0cos(x)0
0m2-sin(x)0
00-cos(x)1];
B=[0;m1*g;0;m2*g];
X=fc(A,B)
4.设
,编写一个MATLAB函数文件fx.m,使得调用f(x)时,x可用矩阵代入,得出的f(x)为同阶矩阵。
函数fx.m文件:
functionf=fx(x)
%fxfx求算x矩阵下的f(x)的函数值
A=0.1+(x-2).^2;
B=0.01+(x-3).^4;
f=1./A+1./B;
命令文件:
clc;
x=input('输入矩阵x=');
f=fx(x)
1.已知x=6,y=5,利用符号表达式求
提示:
定义符号常数x=sym(‘6’),y=sym(‘5’)。
x=sym('6');y=sym('5');
z=(1+x)/(sqrt(3+x)-sqrt(y))
2.分解因式。
(1)x4-y4
(2)5135
解:
M文件:
clearall;clc;
symsxy;t=sym('5135');
a=x^4-y^4;
factor(a)
factor(t)
3.化简表达式。
解:
M文件:
clearall;clc;
symsbeta1beta2x;
f1=sin(beta1)*cos(beta2)-cos(beta1)*sin(beta2);
simplify(f1)%
(1)问
f2=(4*x^2+8*x+3)/(2*x+1);
simplify(f2)%
(2)问
5.用符号方法求下列极限或导数。
symsxtayz;
f1=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/sin(x)^3;%
(1)
limit(f1)
f2=(sqrt(pi)-sqrt(acos(x)))/sqrt(x+1);%
(2)
limit(f2,x,-1,'right')
6.用符号方法求下列积分。
解:
M文件:
clear;clc;
x=sym('x');
f1=1/(1+x^4+x^8);%
(1)
f2=1/(asin(x))^2/sqrt(1-x^2);%
(2)
f3=(x^2+1)/(x^4+1);%(3)
f4=exp(x)*(1+exp(x))^2;%(4)
F1=int(f1)
F2=int(f2)
F3=int(f3,0,inf)
F4=int(f4,0,log
(2))
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 期末 复习