
计算机模拟第8课.ppt
20页例4-5 输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出c=input('请输入一个字符','s'); if c>='A' end,2.switch语句switch语句根据表达式的取值不同,分别执行不同的语句,其语句格式为:switch 表达式case 表达式1语句组1case 表达式2语句组2……case 表达式m语句组motherwise语句组nend,,当表达式的值匹配于表达式1的值时,执行语句组1,当表达式的值匹配于表达式2的值时,执行语句组2,…,当表达式的值匹配于表达式m的值时,执行语句组m,当表达式的值不匹配于case所列的表达式的值时,执行语句组n当任意一个分支的语句执行完后,直接执行switch语句的下一句 注意:表达式的值应是一个标量或一个字符串,表达式m的值可以是一个标量或一个字符串,还可以是一个元胞数组例4-6 某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示): price<200 没有折扣200≤price<500 3%折扣500≤price<1000 5%折扣1000≤price<2500 8%折扣2500≤price<5000 10%折扣5000≤price 14%折扣 输入所售商品的价格,求其实际销售价格。
程序如下: price=input('请输入商品价格'); switch fix(price/100) case {0,1} %价格小于200rate=0;case {2,3,4} %价格大于等于200但小于500rate=3/100;case num2cell(5:9) %价格大于等于500但小于1000rate=5/100;case num2cell(10:24) %价格大于等于1000但小于2500rate=8/100;case num2cell(25:49) %价格大于等于2500但小于5000rate=10/100;otherwise %价格大于等于5000rate=14/100; end price=price*(1-rate) %输出商品实际销售价格,3.try语句 语句格式为: try语句组1 catch语句组2 end try语句先试探性执行语句组1,如果语句组1在执行过程中出现错误,则将错误信息赋给保留的lasterr变量,并转去执行语句组2。
例4-7 矩阵乘法运算要求两矩阵的维数相容,否则会出错先求两矩阵的乘积,若出错,则自动转去求两矩阵的点乘 程序如下: A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12]; tryC=A*B; catchC=A.*B; end C lasterr %显示出错原因,4.2.3 循环结构 1.for语句 for语句的格式为: for 循环变量=表达式1:表达式2:表达式3循环体语句end 其中表达式1的值为循环变量的初值,表达式2的值为步长,表达式3的值为循环变量的终值步长为1时,表达式2可以省略例4-8 一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数输出全部水仙花数程序如下: for m=100:999 m1=fix(m/100); %求m的百位数字 m2=rem(fix(m/10),10); %求m的十位数字 m3=rem(m,10); %求m的个位数字 if m==m1*m1*m1+m2*m2*m2+m3*m3*m3 disp(m) end end,。
