MATLAB第四章答案
MATLAB程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
与应用(第二版)刘卫国主编答案 第四章作业
4.1、
a=input('请输入一个4位数:');
while (a<1000|a>9999)
a=input('输入错误,请重新输入一个4位数:'); end
b=fix(a/1000);
c=rem(fix(a/100),10); d=rem(fix(a/10),10); e=rem(a,10);
b=b+7;
c=c+7;
d=d+7;
e=e+7;
b=rem(b,10);
c=rem(c,10);
d=rem(c,10);
e=rem(e,10);
g=b;b=d;d=g;
g=c;c=e;e=g;
a=1000*d+100*e+10*b+c; disp(['加密后:',num2str(a)]) 4.2、
a=input('请输入a: ');
b=input('请输入b: ');
c=input('请输入c: ');
x=0.5:1:5.5;
x1=(x>=0.5&x<1.5); x2=(x>=1.5&x<3.5); x3=(x>=3.5&x<=5.5); y1=a.*(x.^2)+b.*x+c; y2=a*(sin(b)^c)+x; y3=log(abs(b+c./x)); y=y1.*x1+y1.*x2+y3.*x3; disp(y)
4.3、
x=fix(rand(1,20)*89)+10; x1=fix(sum(x)/20); disp(['平均数是:',num2str(x1)]) m=(rem(x,2)==0&x
=m
a=m;
elseif b<=m
b=m;
end
end
disp(['最小数是:',num2str(a)]) disp(['最大数是:',num2str(b)]) 4.5、
s=0;
a=0;
for b=1:64
c=2^a;
a=a+1;
s=s+c;
end
disp(['2的0次方到63次方的和是:',num2str(s)])
4.6.1、
sum1=0;
for n=1:100
x=(-1)^(n+1)*(1/n);
sum1=sum1+x;
end
disp(['当n取100时: sum=',num2str(sum1)])
sum2=0;
for n=1:1000
x=(-1)^(n+1)*(1/n);
sum2=sum2+x;
end
disp(['当n取1000时: sum=',num2str(sum2)])
sum3=0;
for n=1:10000
x=(-1)^(n+1)*(1/n);
sum3=sum3+x;
end
disp(['当n取10000时:sum=',num2str(sum3)])
4.8、clear all
a=input('请输入一个矩阵:');
b=input('请再输入一个矩阵:(注意:两矩阵要可以相乘)');
[f1,f2]=juzhenji(a,b); 5.1
x=-2*pi:pi/1000:2*pi; y=100./(1+x.^2);
plot(x,y)
x=-2*pi:pi/1000:2*pi; y=(1/2*pi)*exp(-0.5*x.^2); plot(x,y)
t=-2*pi:pi/1000:2*pi; x=sin(t);
y=cos(t);
plot(x,y)
t=-2*pi:pi/1000:2*pi; x=t.^2;
y=5*t.^3;
plot(x,y,'r:')
实验3
1、clear
m=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];
for x=m
if x<0&x~=-3
y1=x^2+x-6;
disp(['y= ',num2str(y1)])
elseif x>=0&x<5&x~=2&x~=3
y2=x^2-5*x+6;
disp(['y= ',num2str(y2)])
else
y3=x^2-x-1;
disp(['y= ',num2str(y3)])
end
end
2、clear all
x=input('请输入成绩:');
while (x>100|x<0)
x=input('输入错误,请重新输入成绩:'); end
switch fix(x/10)
case {9,10}
disp('A')
case {8}
disp('B')
case {7}
disp('C')
case {6}
disp('D')
case {0,1,2,3,4,5}
disp('E')
end
3、clear all
x=input('请输入工号:');
y=input('请输入工作时长:');
if y>120
a=84*120+(y-120)*84*0.15;
disp(['您本月工资是: ',num2str(a)])
elseif y<60
b=84*y-700;
disp(['您本月工资是: ',num2str(b)])
else
c=84*y;
disp(['您本月工资是: ',num2str(c)])
end
4、clear all
a=fix(rand(1)*89)+10; disp(['a=',num2str(a)]) b=fix(rand(1)*89)+10; disp(['b=',num2str(b)]) x=input('请输入一个四则运算符号','s'); if abs(x)==43
c=a+b;
elseif abs(x)==45
c=a-b;
elseif abs(x)==42
c=a*b;
elseif abs(x)==47
c=a/b;
end
disp(['a于b的计算结果是:',num2str(c)]) 5、clear all
a=fix(rand(5,6)*89)+10; n=input('请输入一个数(输出结果是一个5*6的矩阵的该行元素):');
if n>5|n<0
b=a(5:5,:);
disp(['输入错误,程序输出最后一行的元素:',num2str(b)])
else
c=a(n:n,:);
disp(['输出结果是:',num2str(c)])
end
实验4
1、 n=input(“请输入n值:”); s1=0;
for k=1:n;
x=1/(k^2);
s1=s1+x;
pi=sqrt(6*s1); 2、clear
n=1;
y=0;
while (y<3)
x=1/(2*n-1);
n=1+n;
y=y+x;
end
disp(['y<3时n的最大值是:',num2str(n-2)])
disp(['相应的的y值是: ',num2str(y-x)])
5、clear
p=0;
l=0;
H=[];
for m=2:49
a=m;
b=m+1;
c=a*b-1;
for k=1:c
if rem(c,k)==0
l=l+1;
end
end
if l==2
disp(['亲密数对是','(',num2str(a),' ,',num2str(b),')'])
p=p+1;
H=[H,c];
end
l=0;
end
sum=sum(H);
disp(['亲密数对的个数是:',num2str(p)])
disp(['亲密数对的和是: ',num2str(sum)])
实验6
1、clear all
x=linspace(0,2*pi,101); y=(0.5+3*sin(x)/(1+x.^2)).*cos(x);
plot(x,y);title('y=[0.5+3sin(x)/(1+x^{2})]cos(x)的图像如下:')
2/1 clear all
x=linspace(-2*pi,2*pi,500); y1=x.^2;
y2=cos(2*x);
y3=y1.*y2;
plot(x,y1,'b-',x,y2,'r--',x,y3,'k:');
2//3 clear all
x=linspace(-2*pi,2*pi,500); y1=x.^2;
y2=cos(2*x);
y3=y1.*y2;
subplot(3,3,1);
bar(x,y1); %条形图
subplot(3,3,2);
stairs(x,y1); %阶梯图
subplot(3,3,3);
stem(x,y1); %杆图
subplot(3,3,4);
bar(x,y2);
subplot(3,3,5);
stairs(x,y2);
subplot(3,3,6);
stem(x,y2);
subplot(3,3,7);
bar(x,y3);
subplot(3,3,8);
stairs(x,y3);
subplot(3,3,9);
stem(x,y3);
3、clear all
t=linspace(-5,5,200); H=[];
for x=t
if x<=0
y1=(x+sqrt(pi))/exp(2);
elseif x>0
y1=0.5*log(x+sqrt(1+x.^2));
end
H=[H,y1];
end
plot(t,H,'r:');
4、clear all
a=input('请输入一个数a:');
b=input('请输入一个数b:');
n=input('请输入一个数n:');
theta=linspace(0,2*pi,500); rho=a*sin(b+n.*theta); polar(theta,rho);
5、clear all
x1=linspace(-5,5,21); y1=linspace(0,10,31); [x,y]=meshgrid(x1,y1); z=cos(x).*cos(y).*exp(-0.25.*sqrt(x.^2+y.^2))
subplot(2,1,1);
surf(x,y,z);
subplot(2,1,2);
contour3(x,y,z,30); 6、clear all
s=linspace(0,0.5*pi,10); t=linspace(0,1.5*pi,30); [S,T]=meshgrid(s,t); x=cos(S).*cos(T);
y=cos(S).*sin(T);
z=sin(S);
colormap(prism);
figure(1)
surf(x);
figure(2)
surf(y);shading flat; figure(3)
surf(z);shading interp;