中缀表达式转后缀表达式的规则:1.遇到操作数:直接输出(添加到后缀表达式中)2.栈为空时,遇到运算符,直接入栈3.遇到左括号:将其入栈4.遇到右括号:执行出栈操作,并将出栈的元素输出,直到弹出栈的是左括号,左括号不输出。5.遇到其他运算符:加减乘除:弹出所有优先级大于或者等于该运算符的栈顶元素,然后 ...
分类:
其他好文 时间:
2016-04-10 16:13:56
阅读次数:
239
先将中缀表达式利用栈转换为后缀表达式,然后再利用栈由后缀表达式计算算数表达式的值,具体代码如下:#include<iostream>
usingnamespacestd;
#include<string>
#include<vector>
#include<stack>
enumType
{
OP_NUM,
OP_SYMBOL,
};
enumOperat
..
分类:
其他好文 时间:
2016-04-08 01:09:27
阅读次数:
197
1.运行环境:VS2015/Win7 2.头文件: stack.h postfix.h 3.实现文件: stack.c postfix.c 4.测试demo: ...
分类:
编程语言 时间:
2016-04-06 12:57:19
阅读次数:
265
这一周将我的计算模块移植到了搭档的程序中。图形模块依旧用的搭档的。更改了部分成员的类型实现了图形界面与计算模块的衔接。 在生成算式后发现小数精度过高或者数字过大时答案会错误,又带括号又带负号的会错误。经过监控栈内情况以及后缀表达式,观察到后缀表达式中多了不该转换的负号,来源是中缀表达式中右括号后的减 ...
分类:
其他好文 时间:
2016-04-03 23:56:07
阅读次数:
162
四则运算栈实现,支持小数、负数,经过测试,暂时没发现错误! 思路: 1、去掉字符串中的空格,将字符串按照运算符和数字保存到vector<string>中; 2、判断字符串是否符合四则运算的表达式; 3、栈实现:数字栈、运算符栈,从左到右扫描中缀表达式; 数字:直接入栈;运算符: (1)”(“:直接入 ...
分类:
其他好文 时间:
2016-04-01 21:55:24
阅读次数:
199
先举例: (3 + 4) × 5 - 6 中缀表达式- × + 3 4 5 6 前缀表达式3 4 + 5 × 6 - 后缀表达式 以前没见过前缀和后缀表达式,感觉一下刷新了知识库!原来在计算机里早已司空见惯了…… 完了,一下暴露非科班出身了……不扯了,下面这篇文章对这三种表达式介绍的很不错,特拿来分 ...
分类:
其他好文 时间:
2016-03-30 22:32:38
阅读次数:
242
我们人脑很容易理解中缀表达式,但是中缀表达式在计算机并不好计算,所有我们要将中缀表达式转换成后缀表达式,因为后缀表达式是很容易计算的。为什么要写一个这样的程序呢?原因是我一开始想写一个计算机,它能够将输入的表达式的值计算出来。一开始觉得这样子的程序应该是很简单的,然后开始动手写,开始写了之后才发现并 ...
分类:
其他好文 时间:
2016-03-28 13:38:14
阅读次数:
202
分数类,实现了运算符的重构,能实现分数之间的加减法。 input类负责从txt读取中缀表达式并转换成后缀表达式。 判断式子中有无分数 calculator类有两个分别负责将字符转化为值,或运算符,计算有分数的式子,和无分数的式子。 pan_and_out类负责判断输出式子,接受答案并判断。 经过这次
分类:
其他好文 时间:
2016-03-19 22:53:24
阅读次数:
241
相对于第二版又提出了新的要求 1.学生写的程序必须能判定用户的输入答案是否正确 2.程序必须能处理四种运算的混合算式 要求两人合作分析,单独编程,单独撰写博客 设计思路: 核心问题在于如何对随即产生的四则运算进行求值 通过查阅资料和复习数据结构 发现可以采用中缀表达式转化为后缀表达式的方法 并采用栈
分类:
其他好文 时间:
2016-03-19 21:12:10
阅读次数:
187
新的要求: 1.学生写的程序必须能判定用户的输入答案是否正确 2.程序必须能处理四种运算的混合算式 设计思路: 核心问题在于如何对随即产生的四则运算进行求值 通过查阅资料和复习数据结构 发现可以采用中缀表达式转化为后缀表达式的方法 并采用栈结构 团队成员:赵承圣、罗元浩 http://www.cnb
分类:
其他好文 时间:
2016-03-19 21:07:56
阅读次数:
125