首页 实验03-选择结构程序设计(第4章)

实验03-选择结构程序设计(第4章)

举报
开通vip

实验03-选择结构程序设计(第4章)实验03-选择结构程序设计(第4章)实验03-选择结构程序设计(第4章)PAGEPAGEPAGE15实验03-选择结构程序设计(第4章)《数学软件》课内实验2013信科273王平李倩15实验03选择结构程序设计(第4章MATLAB程序设计)一、实验目的1.掌握建立和执行M文件的方法。2.掌握利用if语句实现选择结构的方法。3.掌握利用switch语句实现多分支选择结构的方法。4.掌握try语句的使用。二、实验内容1.(用if)求分段函数的值用if语句实现,分别输出x=,,,,,,时的y值。文本编辑...

实验03-选择结构程序设计(第4章)
实验03-选择结构程序设计(第4章)实验03-选择结构程序设计(第4章)PAGEPAGEPAGE15实验03-选择结构程序设计(第4章)《数学软件》课内实验2013信科273王平李倩15实验03选择结构程序设计(第4章MATLAB程序设计)一、实验目的1.掌握建立和执行M文件的方法。2.掌握利用if语句实现选择结构的方法。3.掌握利用switch语句实现多分支选择结构的方法。4.掌握try语句的使用。二、实验内容1.(用if)求分段函数的值用if语句实现,分别输出x=,,,,,,时的y值。文本编辑器中的程序:x=input('请输入x的值:');ifx<0&&x~=-3y=x^2+x-6elseifx<5&&x>=0&&x~=2&&x~=3y=x^2-5*x+6elsey=x^2-x-1end命令窗口中的运行结果:请输入x的值:y=14请输入x的值:y=11请输入x的值:y=2请输入x的值:y=1请输入x的值:y=请输入x的值:y=5请输入x的值:y=192.(用if、switch)输出成绩等级输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E。要求:(1)分别用if语句和switch语句实现。(2)要求输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。用if语句实现:文本编辑器窗口中的程序:x=input('输入一个百分制成绩:x=');ifx<=100&&x>=90disp('成绩:A')elseifx<=89&&x>=80disp('成绩:B')elseifx>=70&&x<=79disp('成绩:C')elseifx>=60&&x<=69disp('成绩:D')elseifx<60disp('成绩:E')elsedisp('输入内容不符合规则,请输入100以内的整数!')end命令窗口中的运行结果:输入一个百分制成绩:x=78成绩:C输入一个百分制成绩:x=54成绩:E输入一个百分制成绩:x=83成绩:B输入一个百分制成绩:x=63成绩:D输入一个百分制成绩:x=209输入内容不符合规则,请输入100以内的整数!输入一个百分制成绩:x=98成绩:A用switch语句实现:文本编辑器窗口中的程序:grades=input('请输入百分制成绩:grades=');switchfix(grades)casenum2cell(90:100)display('A')casenum2cell(80:89)display('B')casenum2cell(70:79)display('C')casenum2cell(60:69)display('D')casenum2cell(0:59)display('E')otherwisedisplay('输入内容不符合规则,请输入100以内的整数!')end命令窗口中的运行结果:3.工资计算硅谷公司员工的工资计算方法如下:(1)工作时数超过120小时者,超过部分加发15%。(2)工作时数低于60小时者,扣发700元。(3)其余按每小时84元计发。试编程按输入的工号和该号员工的工时数,计算应发工资。文本编辑器窗口中的程序a=input('员工号:');b=input('工时数:');ifb>=120c=120*84+(b-120)*84*(1+elseifb<=60c=b*84-700elsec=b*84enddisp(['工号为',num2str(a),'员工应得工资为',num2str(c)])命令窗口中的运行结果:员工号:289工时数:125c=10563工号为289员工应得工资为10563员工号:89工时数:98c=8232工号为89员工应得工资为8232员工号:876工时数:57c=4088工号为876员工应得工资为40884.两位数的加、减、乘、除四则运算设计程序,完成两位数的加、减、乘、除四则运算,即产生两个两位随机整数,再输入一个运算符号,做相应的运算,并显示相应的结果。文本编辑器中的程序:x1=10+(99-10)*rand(1);x2=10+(99-10)*rand(1);m=fix(x1)n=fix(x2)x=input('输入一个运算符:','s');switchxcase{'+'}c=m+n;case{'-'}c=m-n;case{'*'}c=m*n;case{'/'}c=m/n;otherwisec='false';endc命令窗口中运行结果:m=95n=95输入一个运算符:+c=190m=24n=96输入一个运算符:-c=-72m=95n=53输入一个运算符:*c=5035m=81n=22输入一个运算符:/c=5.(用try…catch)建立5×6矩阵,要求输出矩阵第n行元素要求:当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。程序:A=input('输入A的值:')n=input('输入n的值:')tryB=A(n,:);catchB=A(5,:);endBlasterr运行结果:输入A的值:rand(5,6)A=输入n的值:6n=6B=ans=AttemptedtoaccessA(6,:);indexoutofboundsbecausesize(A)=[5,6].三、实验提示1.(用if)求分段函数的值用if语句实现,分别输出x=,,,,,,时的y值。步骤:(1)点击MATLAB主窗口的“文本编辑器”按钮,弹出“文本编辑器”窗口。(2)在其中输入程序。(3)(建议先将主窗口中的命令窗口提取出来),点击“保存并运行”按钮,系统提示用何文件名保存该程序,可用默认文件名,或自己起文件名,然后程序运行。(4)若程序无语法错误,则在命令窗口中显示运行结果;否则显示的是错误信息。如有错,回到文本编辑器进行修改再运行。本程序要用到input语句,在运行中输入即时数据。注意给出提示信息,下面的参考结果中的‘输入:x=’是提示信息。用到标量逻辑“与”运算符“&&”。注意单个“&”是数组逻辑“与”。本程序要运行7次,因为要输入7个数据,参考结果:本程序中第一行可为:x=input(‘输入:x=’);之后是if…elseif…else…end语句,其中x是自变量,y是因变量。最后一行简单输入个y即可。注意其后不加分号,否则不显示y的值。2.(用if、switch)输出成绩等级参考例用switch。用于取整的函数有fix向0方向取整floor向-∞方向取整ceil向+∞方向取整round四舍五入到最邻近的整数4.两位数的加、减、乘、除四则运算用switch。用if语句处理除数为0。产生两个两位随机整数可参考下例中的相关用法:例(递归与非递归)任意排列问题p74randperm(n)产生一个从整数1到整数n的任意排列。编写函数实现randperm(n)的功能,即给出一个由任意数组成的行向量,然后产生这个行向量元素的任意排列。%非递归,函数文件functionY=rndprm1(X)%RNDPRM1用for产生一行向量的任意排列%RNDPRM1(X)产生行向量X的任意排列[m,n]=size(X);ifm>1error('RNDPRM1只接受列向量的输入');endY=[];%从一个空矩阵开始l=n;%X的元素个数fori=1:nk=1+fix(l*rand);%随机选择Y的下一个元素的位置,rand等价于rand(1),0='A'&&c<='Z'%标量“与”用&&disp(char(abs('a')+abs(c)-abs('A')));elseifc>='a'&&c<='z'disp(char(abs('A')+abs(c)-abs('a')));elseifc>='0'&&c<='9'disp(abs(c)-abs('0'));elsedisp(c);end%setstr用char代替,setstr将淘汰输入一个字符:aA输入一个字符:Bb输入一个字符:55输入一个字符:&&2.switch语句根据表达式的取值,分别执行不同的语句。switch表达式case表达式1语句组1case表达式2语句组2……case表达式m语句组motherwise语句组nend当任意一个分支的语句执行完后,直接执行switch语句的下一句。例(switchcase)打折销售p63某商场对商品实行打折销售, 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 如下(价格用price表示):price<200没有折扣200≤price<5003%折扣500≤price<10005%折扣1000≤price<25008%折扣2500≤price<500010%折扣5000≤price14%折扣输入所售商品的价格,求其实际销售价格。price=input('输入商品价格:');switchfix(price/100)case{0,1}%价格<200rate=0;case{2,3,4}%200<=价格<500rate=3/100;casenum2cell(5:9)%500<=价格<1000rate=5/100;casenum2cell(10:24)%1000<=价格<2500rate=8/100;casenum2cell(25:49)%2500<=价格<5000rate=10/100;otherwise%5000<=价格rate=14/100;endprice=price*(1-rate)%输出商品实际销售价格输入商品价格:2300price=21163.try语句try语句组1catch语句组2lasterrend先试探性执行语句组1;若语句组1在执行过程中出错,则将错误信息赋给lasterr变量,并转去执行语句组2。新用法:try语句组1catchexception语句组2throw(exception);endexception放错误信息,throw(exception)显示exception的内容。例(trycatch)矩阵乘法和点乘p64矩阵乘法运算要求两矩阵的维数相容,否则出错。先求两矩阵乘积,若出错,则转去求两矩阵点乘。clc;A=[1,2,3;4,5,6];B=[7,8,9;10,11,12];tryC=A*B;catchC=A.*B;lasterr%显示出错原因endCC=71627405572ans=Errorusing==>mtimesInnermatrixdimensionsmustagree.
本文档为【实验03-选择结构程序设计(第4章)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
一支独秀
本人任教多年,工作认真,善于沟通,教学过硬,多次被学校评为学习标杆。
格式:doc
大小:350KB
软件:Word
页数:15
分类:
上传时间:2021-11-16
浏览量:2