matlab平时作业要点.docx
文本预览下载声明
《MATLAB程序设计基础》平时作业
说明: 1-17 题为必做题,须分别提交纸质文档及与纸质文档对应的电子文档 .doc 版。
1. 对于每输入的一个百分制成绩,要求输出对应的成绩等级 A、 B、 C、 D、 E。其中 A 的分
值在区间 [90,100) 内; B 的分值在区间 [80,90) 内; C的分值在区间 [70,80) 内;D 的分值在区间 [60,70) 内; E 的分值在区间 [0,60) 内;要求:
1)要有对输入成绩是否合理的判断:
①输入成绩如果含有小数,只能是“ x.5 ”的形式,其实 x 为合理的整数。
②成绩必须在百分制范围内。
③如果输入的成绩不合理,应向命令窗口输出报错信息“输入的成绩不合理”
2)用 if 语句实现题目要求
x=input( 输入一个数值 :); %输入
if mod(x,0.5)==0x=0x100; %mod(x,0.5) 表示 x 除以 0.5 的余数 ,用以判断
成绩含小数是否为 x.5
if x0x=100 %不合理成绩
disp( 输入的成绩不合理 )
elseif x100x=90% 成绩 [90 100)
disp( 成绩等级为: A)
elseif x90x=80 % 成绩 [80 90)
disp( 成绩等级为: B)
elseif x80x=70% 成绩 [70 80)
disp( 成绩等级为: C)
elseif x70x=60% 成绩 [60 70)
disp( 成绩等级为: D)
else
disp( 成绩等级为: E)%成绩 [0 60)
end
else
disp(输入的成绩不合理 )
end
运行结果:
输入一个数值 :57
成绩等级为: E
输入一个数值 :93.3
输入的成绩不合理
3)用 switch 语句实现题目要求
x=input( 请输入一个成绩 :); %输入
if mod(x,0.5)==0x=0x100 %mod(x,0.5) 表示 x 除以 0.5 的余数 ,用以判断成绩
含小数是否为 x.5
switch floor(x/10) %x 除以 10 向下取整
case 9
disp(成绩等级为: A);
case 8
disp(成绩等级为: B);
1
case 7
disp(成绩等级为: C);
case 6
disp(成绩等级为: D);
case {5,4,3,2,1,0}
disp(成绩等级为: E);
otherwise
disp(输入的成绩不合理 );
end
else
disp(输入的成绩不合理 );
end
运行结果:
请输入一个成绩 :0
成绩等级为: E
请输入一个成绩 :120
输入的成绩不合理
请输入一个成绩 :95.5
成绩等级为: A
设计程序,完成 [10,99] 之间两位整数的加、减、乘、除四则运算。要求:1)随机产生区间 [10,99] 之内的两位随机整数
2)在产生符合要求的随机数后,输入一个运算符号,做相应的运算
3)运算结果显示在命令窗口,其显示类似于“a=x+y=68 ”的形式。
x=round((99-10)*rand(1)+10); %在区间 [10 99] 随机选一个数 x
y=round((99-10)*rand(1)+10); %在区间 [10 99] 随机选一个数 y
sym=input( 请输入运算符号 (+-*/):,s);
switch sym %switch 语句
case{+}
a=x+y;
disp([ 输入的两数之和 b=,num2str(x),+,num2str(y),=,num2str(a)]); %输出显示类似于 “ a=x+y=68的”形式
case{-}
a=x-y;
disp([ 输入的两数之差 c=,num2str(x),-,num2str(y),=,num2str(a)]);
case{*}
a=x*y;
disp([ 输入的两数之积 d=,num2str(x),*,num2str(y),=,num2str(a)]);
case{/}
a=x/y;
disp([ 输入的两数之商 e=,num2str(x),/,num2str(y),=,num2str(a)]); otherwise disp( 输入符号错误 )
end
运行结果:
请输入运算符号 (+-*/):+
2
输入的两数之和 b=95+31=126
请输入运算符号 (+-*/):-
输入的两数之差 c=64-53=11
请输入运算符号 (+-*/):*
输入的两数之积 d=89*78=6942
请输入运算符号 (+-*/):/
输入的两数之商 e=51/12=4.25
求下列分段函数的值并绘制函数曲线。
x2
x
6,
x
0且 x
-3
yx2
5x
6
显示全部