c++面向对象程序设计-简单计算器的设计

c++面向对象程序设计-简单计算器的设计

ID:6325805

大小:79.50 KB

页数:8页

时间:2018-01-10

c++面向对象程序设计-简单计算器的设计_第1页
c++面向对象程序设计-简单计算器的设计_第2页
c++面向对象程序设计-简单计算器的设计_第3页
c++面向对象程序设计-简单计算器的设计_第4页
c++面向对象程序设计-简单计算器的设计_第5页
资源描述:

《c++面向对象程序设计-简单计算器的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、面向对象程序设计----简单计算器的设计一、问题描述简单计算器的基本功能如下:1.四则运算,例如加减乘除等;2.除了整数的运算也可实现小数的各类运算;3.判断非法操作,例如判定1/0为非法操作;4.其他特性;这个简易计算器只实现以上所述功能,即实现简单计算。二、设计思路计算器起始运行在归零状态,此时只接受数字输入,当按下一个数字按钮时,计算器只显示用户输入第一个操作数,用户在该状态下可以继续输入数字。1.当第一个数字输入完成后,可以接受第二个操作数。2.在数字输入结束进行运算后,按下=按钮可以根据前面按下的操作符计算结果显示,表示计

2、算完成。3.在上述计算过程中都可以接受双击等号回到清零状态。三、功能函数设计:1.数字按钮这个是通过最基本的OnButton()将0~9十个数字按钮的单击消息处理函数用类向导全部关联到此,适文本框应该只是显示当前单击的数字;2.小数点按钮函数OnDecimal这个函数主要是实现小数点在计算器的相关功能3.列表在算法的函数OnSelchangeOperatorList()这一类按钮包括“+”“-”“*”“/”,它们的单击消息在同一个处理函数中进行处理,以同样的方法把这四个按钮的单击操作关联到此函数中,使四则运算法则在列表中通过选择去实

3、现。4.“=”符号函数OnEnquall()实现计算器中等号的功能,双击时也可使编辑框的数字归零。四、编码实现:intcalculator_type_i;doublecount=10,value=0;doubleInput_data_int=0,Input_data_dec=0;doubleInputdata1=0,Inputdata2=0;chardatatostr_buffer[10];booldecimal=FALSE;以上代码是添加的全局变量,为正确获取键盘输入供所有按钮函数使用。//TODO:Addextrainitial

4、izationherem_OperatorBox.AddString("-");m_OperatorBox.AddString("*");m_OperatorBox.AddString("/");8m_OperatorBox.AddString("+");以上代码是初始化列表框,并使其在程序运行时具有“加”“减”“乘”“除”可选择功能。voidCMyCalculatorDlg::On1Button(){if(decimal){Input_data_dec=Input_data_dec+1/count;count=10*count;}

5、elseInput_data_int=10*Input_data_int+1;value=Input_data_int+Input_data_dec;_gcvt(value,10,datatostr_buffer);m_ShowResultEdit=(LPCTSTR)datatostr_buffer;//TODO:AddyourcontrolnotificationhandlercodehereUpdateData(false);}voidCMyCalculatorDlg::On2Button(){if(decimal){Input

6、_data_dec=Input_data_dec+2/count;count=10*count;}elseInput_data_int=10*Input_data_int+2;value=Input_data_int+Input_data_dec;_gcvt(value,10,datatostr_buffer);m_ShowResultEdit=(LPCTSTR)datatostr_buffer;//TODO:AddyourcontrolnotificationhandlercodehereUpdateData(false);}vo

7、idCMyCalculatorDlg::On3Button(){if(decimal){Input_data_dec=Input_data_dec+3/count;count=10*count;}elseInput_data_int=10*Input_data_int+3;value=Input_data_int+Input_data_dec;_gcvt(value,10,datatostr_buffer);m_ShowResultEdit=(LPCTSTR)datatostr_buffer;//TODO:Addyourcontro

8、lnotificationhandlercodehereUpdateData(false);}8voidCMyCalculatorDlg::On4Button(){if(decimal){Input_data_dec=Input_da

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

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

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