计算器实验报告_第1页
计算器实验报告_第2页
计算器实验报告_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计科系实验报告单专业:实验日期:组员:课程名称:《C#.Net》实验名称:简单计算器实验目的:设计要求主要实现windows计算机中的计算器,实现计算器的基本算法。开发软件为MicrosoftVisualStudio2008实验内容:一.操作数定义变量bcs和cs分别用来存放第一个操作数和第二个操作数,定义第三个变量result用来存放运算结果,其中三个变量都是string类型。二.操作符操作符分为一元操作符和二元操作符,两个同样定义字符串变量。Sign用来存放一元操作符和二元操作符。计算是分类计算,如果要先进行一元运算,那么再点击操作符时,就要调用相应的运算函数进行运算,如果是进行二元运算,则再点击等号时在进行相应的迅速按操作并输出相应的结果。三.操作数输入输出的控制思想操作符初始化为空。利用操作符的状态来判断是进行第一个操作数的输入还是第二个操作数的输入,在输入的过程中利用try//异常处理{k=double.Parse(bcs+((Button)sender).Text);}catch{textBox1.Text=bcs;//如果发生异常放弃刚才输入的一个字符i=1;}来控制输入的正确性,当输入的一个字符是,将该字符加在原字符的后面在进行double。如果输入操作失败,就说明输入的字符是非法的。异常将会被catch{}语句捕获,将该字符丢弃,负责保留该字符。四.主要实现的计算方法:1.加法:result=(double.Parse(bcs)+double.Parse(cs)).ToString();2.减法:result=(double.Parse(bcs)-double.Parse(cs)).ToString();3.乘法:result=(double.Parse(bcs)*double.Parse(cs)).ToString();4.除法:result=(double.Parse(bcs)/double.Parse(cs)).ToString();5.求倒:result=((double)1/double.Parse(bcs)).ToString;6.开方:result=Math.Sqrt(double.Parse(bcs)).ToString();五.难点,出现的问题当计算器设计好以后,对于backspace控件的控制存在一个问题。例如:当输入-0.011时,按backspace控件退格时,会出现-0的情况,而实际运算中却是不允许出现这样的情况的。为此,解决这个问题采用了

if(textBox1.Text=="0"||textBox1.Text==result||textBox1.Text=="-0"||textBox1.Text=="-0.")

{

textBox1.Text="0";

}语句来控制此类问题的出现,当然,红色字体中的-0.在某些计算器中是出现过的,所以可有可无,这样,当backspace控件退回到“.”时,便可以直接放回为0.当一次运算完毕的时候,可以利用

bcs="0";

cs="0";

sign=null;来保证下一次的计算可以顺利的进行而不占用资源。六.操作说明1.数字键0——9用于数字的键入,可键入个位数,也可连续键入多位数。2.“.”用于小数点的键入3.“+”“-”“*”“/”“=”“√””1/x”分别用于加、减、乘、除\相等开方及求倒的运算。4backspace键位逐字删除,C为清屏。5.如出现违规操作会有报错提醒。实验小结:所设计的计算器主要实现的算法有“+、-、*、/、√、1/x”等基本windows计算器的算法,计算器中主要注意操作符的控制及输入输出的控制思想,本试验很好的体现了try{}、catch{}来控制输入输出的正确性。另外,通过计算器的设计,学习

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论