7.1 if-else判断语句
x<-1 y=1
-1<=x<=2 y=x^2
x>2 y=4
改进: x=5; if x<-1 y=1; else %x>=-1 if x<=2 y=x^2; %x>=-1%%x<=2 else %x>2 y=4; end end 另一张写法: x=5; if x<-1 y=1; elseif x<=2 y=x^2; %x>=-1%%x<=2 else %x>2 y=4; end
%% 练习 >> scalar=4 %标量 scalar = 4 >> vector=[12 34 56] %向量 vector = 12 34 56 >> matrix=[1 2 3 4;5 6 7 8] %矩阵 matrix = 1 2 3 4 5 6 7 8 %%函数在脚本中为: %写一个函数,判断输入是标量、向量还是矩阵 function outtype=findargtype(inputarg) %inputarg is a scalar,output='scalar' %inputarg is a row vector,output='row vector' %inputarg is a column vector,output='coiumn vector' %inputarg is a matrix,output='matrix' %标量是行数列数都是1,向量是行数1列数大于1,矩阵行数列数都大于1 [r,c] = size(inputarg); if r==1 && c==1 outtype='scalar'; elseif r==1 || c==1 outtype='vector'; %判断行向量和列向量需要改成: %elseif r==1 %outtype='row vector'; %elseif c==1 %outtype='column vector'; else outtype='matrix'; end end
%quiz grade:integer 0 - 10 %10、9 A; 8 B; 7 C; 6 D; 5及以下F %如数字小于0或者大于10,赋予X,要么没考试要么输入错误 function letGrade = letterGrade(numGrade) if numGrade==9 || numGrade==10 letGrade='A'; elseif numGrade==8 letGrade='B'; elseif numGrade==7 letGrade='C'; elseif numGrade==6 letGrade='D'; elseif numGrade<0||numGrade>10 letGrade='X'; else letGrade='F'; end end