目錄
?一、
?二、
?三、
?四、
?五、
一、
求分段函數(shù)的值
?用if語句實(shí)現(xiàn),分別輸出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值的矩陣
for x0=x
if x0<0&x0~=-3
y=[y,x0*x0+x0-6];
elseif x0>=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
---------------------------------------運(yùn)行結(jié)果---------------------------------------------
?二、
輸入一個百分制成績,要求輸出成績等級A、B、C、D、E。其中90~100分為A,80~分為B,70~79分為C,60~69分為D,60分以下為E。
要求:
(1)分別用if語句和switch語句實(shí)現(xiàn)。
(2)輸入百分制成績后要判斷該成績的合理性,對不合理的成績應(yīng)輸出出錯信息。
---------------------------------------示例代碼---------------------------------------------
x=input('請輸入一個百分制成績:');
if x>100|x<0
disp('您輸入的成績不是百分制成績,請重新輸入。');
elseif x<=100&x>=90
disp('A');
elseif x<=89&x>=80
disp('B');
elseif x<=79&x>=70
disp('C');
elseif x<=69&x>60
disp('D');
else
disp('E');
end
s=input('請輸入一個成績(0分到100分之間):'); %s用于存放成績
while 1 %判斷輸入成績的合理性
if s<0|s>100
disp('輸入的成績需在0到100之間,請重新輸入:')
s=input('請輸入一個成績(0分到100分之間):');
else
break;
end
end
switch fix(s/10) %對成績做出等級判斷
case {9,10}
disp('A')
case 8
disp('B')
case 7
disp('C')
case 6
disp('D')
otherwise
disp('E')
end
% switch版本
g=input('請輸入一個百分制成績:');
while 1
if g<0||g>100
disp('您輸入的百分制成績不合理,請重新輸入!');
g=input('請輸入一個百分制成績:');
else
break;
end
end
switch fix(g)
case num2cell(0:59)
disp('E')
case num2cell(60:69)
disp('D')
case num2cell(70:79)
disp('C')
case num2cell(80:89)
disp('B')
case num2cell(90:100)
disp('A')
end
---------------------------------------運(yùn)行結(jié)果---------------------------------------------
?三、
硅谷公司員工的工資計(jì)算方法如下。
(1)工作時數(shù)超過120小時者,超過部分加發(fā)15%。
(2)工作時數(shù)低于60小時者,扣發(fā)700元。
(3)其余按每小時84元計(jì)發(fā)。
根據(jù)輸入的員工工號和該員工的工時數(shù),計(jì)算應(yīng)發(fā)工資。
---------------------------------------示例代碼---------------------------------------------
n=input('請輸入員工工號:');
h=input('該員工工作時數(shù)是:');
if h>120
x=(h-120)*84*(1+0.15)+120*84;
elseif h<60
x=h*84-700;
else
x=h*84;
end
disp([num2str(n),'號員工','的應(yīng)發(fā)工資為',num2str(x)]);
---------------------------------------運(yùn)行結(jié)果---------------------------------------------
?四、
設(shè)計(jì)程序,完成兩位數(shù)的加、減、乘、除四則運(yùn)算,即產(chǎn)生兩個兩位隨機(jī)整數(shù),再輸入一個運(yùn)算符號,完成對應(yīng)的運(yùn)算,并顯示相應(yīng)的結(jié)果。
---------------------------------------示例代碼---------------------------------------------
x = round(rand(1,1)*100);
y = round(rand(1,1)*100);
t=input('請輸入運(yùn)算符號:','s');
switch t
case '+'
z=x+y;
case '-'
z=x-y;
case '*'
z=x*y;
case '/'
z=x/y;
default
otherwise
disp('運(yùn)算符輸入有誤')
x=0;
y=0;
z=0;
end
disp([num2str(x),t,num2str(y),'=',num2str(z)])
---------------------------------------運(yùn)行結(jié)果---------------------------------------------
?五、
建立5×6矩陣,要求輸出矩陣第n行元素。當(dāng)n值超過矩陣的行數(shù)時,自動轉(zhuǎn)為輸出矩陣最后一行元素,并給出錯誤信息。
---------------------------------------示例代碼---------------------------------------------
A=input('輸入一個5*6矩陣A=');
n=input('輸入一個正整數(shù)n=');
if n<5&&n>0
disp(A(n,:));
else
disp(A(5,:));
disp('error:n>5')
end
---------------------------------------運(yùn)行結(jié)果---------------------------------------------
文章來源:http://www.zghlxwxcb.cn/news/detail-449930.html
?如有侵權(quán),請盡快與我聯(lián)系?。?!文章來源地址http://www.zghlxwxcb.cn/news/detail-449930.html
到了這里,關(guān)于4、MATLAB程序設(shè)計(jì)與應(yīng)用劉衛(wèi)國(第三版)課后實(shí)驗(yàn)四:選擇結(jié)構(gòu)程序設(shè)計(jì)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!