- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
可视化程序编程环境
《可视化程序编程环境》
实验报告
项目名称 一个简单计算器的设计
学 院 计算机学院
专 业 计算机科学与技术
年 级 05级(6)班
学 号 3105007017
姓 名 邓进荣
指导教师 黄 益 民 老 师
2008 年 01月
目 录
课程设计内容、要求和数据……………………………………………………………1
1.课程设计内容
2.课程设计要求和设计
设计方案…………………………………………………………………1--6
1.界面及其设计
2.原理图
3.表达式处理
4.进制转换
5.科学计算的实现
6.历史计算记录的实现
7.程序容错的处理
实验结果和数据处理……………………………………………………..7—33
1.简单计算
2.科学计算
3.角度与弧度的计算
4.历史记录功能
5.程序容错功能
结论与体会………………………………………………………………….34
问题与讨论……………………………………………………………….34--35
参考资料……………………………………………………………………..35
可视化程序编程环境――
计 算 器
一 .课程设计内容、要求和数据
1.课程设计内容:
系统地学习面向对象编程思想,了解MFC架构,逐步熟悉可视化编程环境Visual C++,并在此环境下设计并实现一个简单计算器系统,该计算器应能实现如下功能:
1、二进制、八进制、十进制及十六进制数的加、减、乘、除、乘方、取模等简单计算
2、科学计算函数,包括(反)正弦、(反)余弦、(反)正切、(反)余切、开方、指数等函数运算
3、以角度、弧度两种方式实现上述部分函数
4、具备历史计算的记忆功能
5、对不正确的表达式能指出其错误原因
要求整理上机步骤、完成实验报告、提交可运行的程序,给出实验数据和实验结果。
2.课程设计要求和数据:
1、能独立搭建可视化程序编程环境,掌握Visual C++6的安装、运行和使用。
2、总体要求:用面向对象编程的思想与方法,实现一个简单计算器的分析与设计阶段的开发工作,开发工具使用Visual C++6。
3、具体要求:本系统为简单计算器程序开发,实现基本的算术运算以及科学计算,具备计算历史的查询功能,并能检查算术表达式中的错误,分别以二进制、十进制等数制的计算。
4、编写设计方案,设计过程,源程序文件结构,分析实验方案,并对实验做出总结。
5、整理上机步骤、完成实验报告、提交可运行的程序,给出实验数据和实验结果。
二 .设计方案
1.
2.界面及其设计
在工程工作区中单击Resource View标签显示应用程序的资源。单击Dialog旁边的“+”,再双击IDD_CALCULATOR_DIALOG并根据表中的定义编辑对话框资源.同理创建IDD_DIALOG_FUNC, IDD_DIALOG_NUM, IDD_DIALOG_OP.
利用ClassWizard为编辑框控件增加Cstring型成员变量m_result用于结果显示,然后根据按钮,使用ClassWizard为对话框类CcalculatorDlg增加消息处理函数,ClassWizard会自动完成有关的函数声明。
使用ClassWizard添加消息处理函数时,先选择要添加消息处理的控件,再单击所需添加的消息,然后再单击Add Function按钮即可。添加消息处理处理的另一个方法事在对话框资源中选中控件,再用右键单击它,在弹出的快捷菜单中选择Events命令,用与上述相似的方法添加消息处理。不过需要注意的是,使用第二种方法添加消息处理函数的前提是已经为控件所属的对话框建立了管理类。因为在缺省的条件下,该方法会将消息处理函数添加到控件父窗口类中。
3.表达式的处理
简单的思路是这样的:对于用户输入的表达式, 1)将其中的括号按从里到外,从左到右的顺序找到第一对,提取其中的表达式; 2)将表达式中的所有一元计算部分编译计算出结果再转换成字串放回表达式中; 3)将其中的所有二元计算部分编译计算出结果再转换成字串放回表达式中。 4)回到第一步,除非表达式中没有括号了。
4.历史计算记录的实现
1)使用函数void CCalculatorDlg::AddToHistr(CString strExp)保存历史记录
void CCalculatorDlg::AddToHistr(CString strExp)
{
if(m_menu2.m_hMenu)
{
int b=m_menu2.Get
文档评论(0)