您的位置:首页 > 其它

四则运算 个人项目整理

2016-03-19 19:47 246 查看

个人项目--四则运算器

需求分析

*随机生成指定数量的表达式,存入*.txt文档中

从*.txt文档中导入算式,在屏幕中显示,并等待用户输入一个运算结果

待用户输入后,将用户结果与标准答案进行比对,并显示正确答案

当用户完成对所有的题目的解答后,程序给出用户作答的统计结果,正确率或错误率等等

规格说明

包含的运算符有:+,-,*,/,(,)等

包含的操作数有:整数,真分数,假分数

每个算式的长度不大于10(可在程序内设定)

总运算题目数不大于20(可根据用户需求自定)

设计

a) 程序整体流程设计



b) 模块间及模块细节设计



中缀转后缀模块

处理中缀表达式中的括号,优先级等问题,并生成相应的后缀表达式。



  2.后缀计算模块

将运算和2个操作数从一个长的后缀表达式中分离出来,调用二元运算模块进行计算,结果压栈。



  3.二元运算模块

一个长的表达式计算最终均可归结为众多个二元运算的累加,因此核心的运算部分在此完成。



c) 附加设计

表达式自动生成模块

自动生成没有重复的,数量,难度可控的表达式组(通过内部宏参数确定)。

主要流程设计,实际编程中又加入许多对过程控制的标志位。



综合测试

分别在Console界面和MFC界面下进行了测试:

正确性检验:经随机挑选的运算式分别采用人工计算与电脑计算,结果相同。

健壮性检验:出现问题,除0问题开始时没有考虑。

遇到的问题:

遇到了除0问题,例如3/(5-5)之类的生成的表达式。

冗余的括号问题:比如(9+9)-5+(6*3)…

加入了除0问题的判别与返回,增强了程序的健壮性。

使用MFC界面使用户操作更加直观,操作简洁。

加入了表达式属性设置功能。

维护

加入了除0问题的判别与返回,增强了程序的健壮性。

使用MFC界面使用户操作更加直观,操作简洁。

加入了表达式属性设置功能。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: