Matlab 上机题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数。
for m=100:999
m1=fix(m/100); %求m的百位数字
m2=rem(fix(m/10),10); %求m的十位数字
m3=rem(m,10); %求m的个位数字
if m==m1*m1*m1+m2*m2*m2+m3*m3*m3
disp(m)
end
end
2.从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和。
sum=0;
n=0;
val=input('Enter a number (end in 0):');
while (val~=0)
sum=sum+val;
n=n+1;
val=input('Enter a number (end in 0):');
end
if (n > 0)
sum
mean=sum/n
end
3. 若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。求[1,500]之间的全部完数。
for m=1:500
s=0;
for k=1:m/2
if rem(m,k)==0
s=s+k;
end
end
if m==s
disp(m);
end
end
4. 从键盘上输入数字星期,在屏幕上显示对应英文星期的单词。
function week
n=input('input the number:');
if isempty(n)
errror('please input !!')
end
if n>7|n<1
error('n between 1 and 7')
end
switch n
case 1
disp('Monday')
case 2
disp('Tuesday')
case 3
disp('Wednesday')
case 4
disp('Thursday')
case 5
disp('Friday')
case 6
disp('Saturday')
case 7
disp('Sunday')
end
5. 某公司销售电脑打印机的价格方案如下:
()如果顾客只买一台打印机,则一台的基本价格为$150。
()如果顾客购买两台以上打印机,则第二台价格为$120。
()第三台以后,每台$110。
写一段程序分别计算出购买1--10台打印机所需的钱数。打印机台数可以在程序开始处指定,或通过input命令读入。运行程序,计算出购买10台打印机的总价格。
写出程序,生成分别购买1--10台打印机所需价格的图表(使用fprintf命令输出图表,不允许手算)。
x=input('请输入购买的打印机台数:');
for m=1:x
if m<=1
y(m)=150*m;
elseif m<=2
y(m)=150+120*(m-1);
else y(m)=150+120+110*(m-2);
y(1,m)=y(m);
end
end
y(x)
plot(1:m,y,'r*--')
6. 有一组学生的考试成绩(见表),根据规定,成绩在100分时为满分,成绩在90~99之间时为优秀,成绩在80~89分之间时为良好,成绩在60~79分之间为及格,成绩在60分以下时为不及格,编制一个根据成绩划分等级的程序。
作业4 绘图练习
1、有一组测量数据满足-at e=y,t的变化范围为0~10,用不同的线型和标记点画出a=0.1、a=0.2和a=0.5三种情况下的曲线。图中添加标题-at e=y(title)和图例框(图注legend)。
2.20 在5.1题结果图中添加标题-at e=y,并用箭头线标识出各曲线a的取值。
2.21 在5.1题结果图中添加标题-at e y和图例框。
2、绘制三维曲线:x=sin(t); y=cos(t); z=cos(2*t);并设计标题和图注。
>>t=(0:0.02:2)*pi;
>>x=sin(t);y=cos(t);z=cos(2*t);
>>plot3(x,y,z,'b-',x,y,z,'bd')
>>view([-82,58]),box on
>>xlabel('x'),ylabel('y'),zlabel('z')
>>legend('链','宝石','Location','best')
3、在同一窗口中画出一个正六变形、半径为1的圆以及球。并标明各自的标题
4、2
2y x xe z --=,当x 和y 的取值范围均为-2到2时,用建立子窗口的方法在同一个图形窗口中绘制出三维线图(plot3)、网线图(mesh)、表面图(surf)和带渲染效果(shading interp)的表面图,标明图形的标题,使图像完美。
>> [x,y]=meshgrid([-2:.2:2]);
>> z=x.*exp(-x.^2-y.^2);
>> mesh(x,y,z)
>> subplot(2,2,1),plot3(x,y,z)
>> title('plot3(x,y,z)')
>> subplot(2,2,2),mesh(x,y,z)
>> title('mesh(x,y,z)')
>> subplot(2,2,3),surf(x,y,z)
>> title('surf(x,y,z)')
>> subplot(2,2,4),surf(x,y,z),shading interp >> title('surf(x,y,z),shading interp')