uml与面向对象实验报告--信息101班--刘敏华

uml与面向对象实验报告--信息101班--刘敏华

ID:20029925

大小:56.00 KB

页数:6页

时间:2018-10-09

uml与面向对象实验报告--信息101班--刘敏华_第1页
uml与面向对象实验报告--信息101班--刘敏华_第2页
uml与面向对象实验报告--信息101班--刘敏华_第3页
uml与面向对象实验报告--信息101班--刘敏华_第4页
uml与面向对象实验报告--信息101班--刘敏华_第5页
资源描述:

《uml与面向对象实验报告--信息101班--刘敏华》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、UML与面向对象实验报告信息101班16号刘敏华题目:请用C++,Java,C#,或VB,.NET任意一种面向对象语言实现一个计算器控制台程序,要求输入两个数和运算符号,得到结果。问题处理:看到这个问题,首先想到的是可以通过设立四个变量A,B,C,D来分别表示两个数字,运算符号及运算结果,然后通过if语句来判断用户输入的运算符号,从而进行数学计算,另外在计算中需要将用户输入的数字在字符型与数值型之间进行转换来实现计算和显示。这样可以写出如下的代码:classProgram{staticvoidMain(string

2、[]args){Console.WriteLine("请输入第一个数字");intA=Convert.ToInt32(Console.ReadLine());//输入字符串转化为整形Console.WriteLine("请输入第二个数字");intB=Convert.ToInt32(Console.ReadLine();Console.WriteLine("请输入运算符");stringC=Console.ReadLine();stringD="";if(C=="+")D=Convert.ToString(A+B)

3、;if(C=="-")D=Convert.ToString(A-B);if(C=="*")D=Convert.ToString(A*B);if(C=="/")D=Convert.ToString(A/B);Console.WriteLine("运算结果是:"+D);}}但是对代码进行仔细分析后,就会发现里面存在着许多明显的问题:1.代码里面的命名很不规范,A,B,C,D让人看起来一下子很难理解代码代表的含义,代码标识符应该采用英文单词或其组合,应当直观且可以拼读,可望文知意,用词应当准确。2.在代码里面,If判断语

4、句用了四次,这样会导致每个条件都必须进行判断,这样下来,就会导致计算机做许多的无用功。3.进行除法运算时,没有判断字符是否为0,如果是0就会导致不符合运算规则,导致计算错误。为了解决这些问题,可以采取以下措施:1.关于命名不规范的问题,可以采用新的命名,数字可以分别用NumberA和NumberB来表示,运算符号则可以用strOperate来表示,运算的结果可以用str2.针对运算符的判断,可以采用switch开关语句来进行判断,这样就会少做许多的无用功3.可以采用if语句来判断是否为0,如果是则提示错误。经过修改

5、,可以得到下面的结果:classProgram{staticvoidMain(string[]args){Console.WriteLine("请输入第一个数字");IntNumberA=Convert.ToInt32(Console.ReadLine());Console.WriteLine("请输入第二个数字");intNumberB=Convert.ToInt32(Console.ReadLine();Console.WriteLine("请输入运算符");stringstrOperate=Console.R

6、eadLine();stringstrResult="";switch(strOperate){{Case"+":strResult=Convert.ToString(NumberA+NumberB);break;case"-":strResult=Convert.ToString(NumberA-NumberB);break;case"*":strResult=Convert.ToString(NumberA*NumberB);break;case"/":if(strNumberB!="0")strResult=

7、Convert.ToString(NumberA/NumberB);elsestrResult="除数不能为0";break;}Console.WriteLine("运算结果是:"+strResult);Console.ReadLine();}}老师给出针对被除数为零的情况可以加一个try…catch语句来捕获异常,对问题进行处理,用法如下:staticvoidMain(string[]args){try{-------------------------------------------------------

8、-----------------------------------------------------------------------------------------------------------------------------------------//相关的输入输出运算代码}catch(Exceptionex){Console.Wr

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。