知ing

MATLAB程序设计与应用(第二版)

刘卫国 编 / 高等教育出版社

麋麓~七 上传

查看本书

第一题程序一

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

%第一题程序二

x=[-5,-3,1,2,2.5,3,5];

y=[];

for a=1:7

if x(a)<0&x(a)~=-3

y=[y,(x(a))^2+x(a)-6];

elseif x(a)>=0&x(a)<5&x(a)~=2&x(a)~=3

y=[y,(x(a))^2-5*x(a)+6];

else

y=[y,x(a)*x(a)-x(a)-1];

end

end

%第二题程序一:

x=input('请输入一个百分制成绩');

if x>100|x<0

disp('您输入的成绩不是百分制成绩请重新输入。');

else

if 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

end

%第二题程序二:

s=input('请输入一个成绩(0分到100分之间):');  %s用于存放成绩

while 1                                       %判断输入成绩的合理性

    if s<0|s>100

        disp('输入的成绩需在0100之间,请重新输入:')

        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

%第三题

n=input('请输入员工工号:');

h=input('该员工工作时数是:');

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),'号员工','的应发工资为',num2str(x)]);

%第四题(还可以用switch语句实现)

a=fix(10+(99-10)*rand(1,2))                    %产生两个随机整数

x=a(1);

y=a(2);

t=input('请输入运算符号:','s');

if t=='+'

    z=x+y;

elseif t=='-'

    z=x-y;

elseif t=='*'

    z=x*y;

elseif t=='/'

    z=x/y;

end

disp([num2str(x),t,num2str(y),'=',num2str(z)])   %输出运算结果

%第五题

a=rand(5,6)              %产生5x6的随机矩阵

n=input('请输入您要输出矩阵的第几行:');

if n>5

    disp('超出了矩阵的行数,矩阵的最后一行为:')

    a(5,:)

else

    disp(['矩阵的第',num2str(n),'行为:'])

    a(n,:)

end


查看更多