码迷,mamicode.com
首页 > 其他好文 > 详细

个人项目(四则运算程序)总结

时间:2016-03-20 00:32:14      阅读:358      评论:0      收藏:0      [点我收藏+]

标签:

一. 基本要求
    将10-20道四则运算题目写入文档,程序读取并输出题目,同时计算出正确结果。使用者对每道题目计算答案,答对进行提示,答错输出正确结果。分别记录回答正确、错误的数目并输出。
四则运算题目基本要求:
1.加减乘除四种运算全部出现
3.算式中要出现括号
2.出现真分数和假分数的运算
4.最少出现一个长度为10的四则运算(10个数字的混合运算)
 
二.算式处理流程
    传统的四则运算表达式(加、减、乘、除、括号)计算的算法分为两个步骤:1.将中缀表达式转为后缀表达式 2.进行后缀表达式的求值。其中中缀转后缀的操作需要一个线性数据结构“栈”的支持。
    由于大二下“数据结构”课程中布置过表达式求值的任务,这次个人项目的完成可以在其基础上修改完成。在那时完成作业时,我并没有将输入的中缀表达式转化为后缀表达式,而是用两个栈分别存储操作数和运算符,并且比较当前运算符的优先级与运算符栈顶符号的优先级,然后进行相应的操作(严蔚敏版《数据结构》)。
    考虑到需要完成真分数和假分数的运算,我定义了一个分数类(fraction),属性包括分子和分母两个整型数。操作数栈即为一个数据类型为分数类的栈。
   技术分享
图1-表达式计算处理基本流程图
    
三. 程序整体流程
技术分享

 

图2-程序整体流程图

四.困难与挑战

     由于进行运算操作的数据类型都是分数类,在修改完代码后发现括号和‘/’并不能总是很协调地在一起出现。在添加若干个条件判断后,这类问题得以解决。如果采用常规的中缀转后缀、后缀求值的方法进行计算的话,也许就不会产生这类的问题。

五.反思

    由于时间限制,这次个人项目并没有实现表达式自动生成和图形界面的功能。希望在以后的项目中能够多动手、多尝试,敢于实现新的功能,在基本功能上有所突破和创新。

 

   
 

个人项目(四则运算程序)总结

标签:

原文地址:http://www.cnblogs.com/liuxin13070013/p/5292407.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!