《迷你计算器.docVIP

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《迷你计算器

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2013年秋季学期 面向对象 课程设计 题 目: 迷你计算器 专业班级: 姓 名: 学 号: 指导教师: 成 绩: 前 言 问题描述: 编写一个程序来实现算术计算器。 设计背景: 随着科学技术的,计算器成为IT领域必不可少的一部分此次对象课程设计,要求设计一款“”,以便实现简单的加减乘除简单的四则运算以及简单的函数运算。设计的同时,所学过的,通过查询完成设计,并拓展知识面。 Visual C++ 6.0下使用MFC实现。 目 录 摘 要 1 第一章 软件总体设计 2 1.系统功能模块图 2 2.各类间关系 2 第二章 详细设计 4 1.总体设计 4 2.部分函数调用关系 5 3.相关函数和变量说明 6 4.详细设计 7 1)、数值输入和显示 10 2)、进制转换 10 3)、双字单字和字节 10 4)、记忆系统 10 5)、退格 10 6)、Inv 10 7)、键盘快捷键 11 8)、程序核心 13 第三章 系统测试 16 1.测试方法 16 2.测试用例 16 3.测试结果 16 第四章 软件使用说明书 17 1.系统运行环境 17 2.程序主要功能 17 3.使用说明 17 总 结 18 参考文献 19 致谢 20 附件:程序原代码 21 1.calcDlg.cpp 21 2.calc.cpp 51 3.其他代码及头文件 53 摘 要 迷你计算器是一款仿Windows计算器的简单计算器。的四则运算简单的函数运算 用面向对象编程的思想与方法,实现一个简单计算器的分析与设计阶段的开发工作,开发工具使用Visual C++6。本系统为简单计算器程序开发,实现基本的算术运算以及科学计算,具备计算历史的查询功能,并能检查算术表达式中的错误,分别以二进制、十进制等数制的计算。 本软件的开发采用面向对象的设计思想。系统的介绍了迷你计算器的开发过程及面向对象思想的具体实现。 关键词: Visual C++ 6.0;MFC;迷你计算器 第一章 软件总体设计 迷你计算器是一款操作简便而又实用的计算器软件,它可以被广泛的应用于各种类型的计算中。开发此迷你计算器软件的目的为了克服传统计算器软件中遇到的诸如计算效率低,难以突破长度限制等问题,根据对现有计算器软件的分析,确定了该系统需实现以下功能: 1、二进制、八进制、十进制及十六进制数的加、减、乘、除、乘方、取模等简单计算; 2、科学计算函数,包括(反)正弦、(反)余弦、(反)正切、(反)余切、开方、指数等函数运行; 3、以角度、弧度两种方式实现上述部分函数; 4、具备历史计算的记忆功能; 5、对不正确的表达式能指出其错误原因; 1.系统功能模块图 本软件流程图如1.1-1 所示: CAboutDlg,CCalaApp,CCalaDlg。 其中类CAboutDlg描述本软件的作者、使用、版本CCalaApp生成静态的文件CCalaDlg控制主程序。 它们之间的关系如图1.1-2所示: 图 1.1-2 各类之间的关系 第二章 详细设计 本软件主要功能包括:计算器的运算关于计算器说明运算CCalaDlg来实现,功能关于计算器的说明CCalaApp和类CAboutDlg来实现。下面分别介绍类A,B的详细设计。 1.总体设计 本程序在设计时,参照了Windows自带的科学计算器的界面设计和功能模式。在界面上与其非常相似,如下图所示: 图 2.1-1 程序主界面ON_COMMAND_RANGE(IDC_BTN_A, IDC_BTN_F, OnClickedNumberAF) 就可以了,这样不公节省了代码量,而且还使程序更简洁,更通俗易懂。 程序的内核采用栈来处理,从而不仅可以处理表达式,而且可以按优先级来计算。在算符优先级的比较方面,本程序抛弃了传统的建立一个二维数组的方式来查询比较算符优先级,而是设一个ENUM类型的变量,将优先级别小的操作符放在前面,优先级别大的操作符放在后面,如: enum Operator { OpNone=0,OpAdd,OpSub,OpMul,OpDiv} 这样就可以通过直接比较操作符优先级而进行操作了。 2.部分函数调用关系 表2.1-1部分函数调用关系表 CCaleDlg OnClickedNumber Clic

文档评论(0)

84537592 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档