matlab的if,switch和try语句的⽤法举例
if语句
1.计算分段函数的值
(1)采⽤双分⽀结构来实现,程序如下:
%if语句双分⽀结构
x=input('请输⼊x的值:');
if x==10
y=cos(x+1)+sqrt(x.^2+1);
else
y=x*sqrt(x+sqrt(x));
end
y
(2)采⽤单分⽀if语句来实现,程序如下:
%if语句单分⽀结构
x=input('请输⼊x的值:');
if x==10
y=cos(x+1)+sqrt(x*x+1);
end
if x~=10
y=x*sqrt(x+sqrt(x));
end
y
(3)可以不⽤第⼀个if语句,直接求函数值。程序如下:
%第⼀个不⽤if直接求函数值
x=input('请输⼊x的值:');
y=cos(x+1)+sqrt(x*x+1);
if x~=10
y=x*sqrt(x+sqrt(x));
end
y
2.输⼊⼀个字符,若为⼤写字母,则输出其对应的⼩字母;若为⼩写字母,则输出其对应的⼤写字母;若为数字字符则输出其对应数的平⽅,若为其他字符则输出原样。
解析:可能会⽤到的函数有:
lower函数:将⼤写字母转换成相应的⼩写字母;
upper函数:将⼩写字母转换成相应的⼤写字母;
str2double函数:将字符串转换为数值;
代码如下:
c=input('请输⼊⼀个字符:','s');
if c>='A' && c<='Z'
disp(lower(c));
elseif c>='a' && c<='z'
disp(upper(c));
elseif c>='0' && c<='9'
disp(str2double(c).^2);
else disp(c)
end
switch语句
1.某商场对商品进⾏打折销售,标准如下(商品价格⽤price表⽰)
程序代码如下:
price=input('请输⼊商品价格');
switch fix(price/100) %fix()函数向零⽅向取整
case{0,1}
rate=0;
case{2,3,4}
switch函数用法举例rate=3/100;
case num2cell(5:9)
rate=5/100;
case num2cell(10:24)
rate=8/100;
case num2cell(25:49)
rate=10/100
otherwise
rate=14/100;
end
price=price*(1-rate)
try语句
1.矩阵乘法运算要求两矩阵的维数相容,否则会出错。先求两矩阵的乘积,若出错,则提⽰错误信息。程序如下:
A=input('请输⼊A矩阵');
B=input('请输⼊B矩阵');
try
C=A*B
catch
lasterr
end
程序结果:
>> try_
请输⼊A矩阵[1,2,3,4;5,6,7,8;9,10,11,12]
请输⼊B矩阵[1,2,3;4,5,6;7,8,9;10,11,12]
C =
70 80 90
158 184 210
246 288 330
>> try_
请输⼊A矩阵[1,2,3;4,5,6]
请输⼊B矩阵[2,3,4;5,6,7]
ans =
'错误使⽤ *
⽤于矩阵乘法的维度不正确。请检查并确保第⼀个矩阵中的列数与第⼆个矩阵中的⾏数匹配。要执⾏按元素相乘,请使⽤ '.*'。'
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论