美文网首页
基于C++的表达式计算求值

基于C++的表达式计算求值

作者: 奔跑骚年 | 来源:发表于2018-12-27 08:56 被阅读0次

一、使用说明

1.1 项目简介

表达式求值是程序设计语言编译中的一个最基本的问题,就是将一个表达式转化为逆波兰表达式并求值。具体要求是以字符序列的形式从终端输入语法正确的、不含变量的整数表达式,并利用给定的优先关系实现对算术四则混合表达式的求值,并演示在求值过程中运算符栈,操作数栈,输入字符和主要操作变化过程。

要把一个表达式翻译成正确求值的一个机器指令序列,或者直接对表达式求值,首先要能正确解释表达式。任何一个表达式都是由操作符,运算符和界限符组成,我们称它们为单词。一般来说,操作数既可以是常数,又可以是被说明为变量或常量的标识符;运算符可以分成算术运算符,关系运算符和逻辑运算符3类;基本界限符有左右括号和表达式结束符等。为了叙述的简洁,我们仅仅讨论简单算术表达式的求值问题,这种表达式只包括加,减,乘,除4种运算符。

人们在书写表达式时通常采用的是“中缀”表达形式,也就是将运算符放在两个操作数中间,用这种“中缀”形式表示的表达式称为中缀表达式。但是,这种表达式表示形式对计算机处理来说是不大合适的。对于表达式的表示还有另一种形式,称之为“后缀表达式”,也就是将运算符紧跟在两个操作数的后面。这种表达式比较合适计算机的处理方式,因此要用计算机来处理,计算表达式的问题,首先要将中缀表达式转化成后缀表达式,又称为逆波兰表达式。

1.2 项目功能要求

为了实现表达式求值,本项目要求首先读入表达式(包括括号)并创建对应二叉树,其次对二叉树进行前序遍历,中序遍历,后序遍历,输出对应的波兰表达式,中缀表达式和逆波兰表达式。

1.3 操作手册

运行程序后,进入欢迎界面,首先要输入表达式。

第一步,输入中缀表达式:

在输入相应表达式后,会自动显示中缀、前缀、后缀表达式。

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1400.html

相关文章

  • 基于C++的表达式计算求值

    一、使用说明 1.1 项目简介 表达式求值是程序设计语言编译中的一个最基本的问题,就是将一个表达式转化为逆波兰表达...

  • 基于C++的表达式计算求值

    一、使用说明 1.1 项目简介 表达式求值是程序设计语言编译中的一个最基本的问题,就是将一个表达式转化为逆波兰表达...

  • C++ 表达式

    表达式是运算符和它们的操作数的序列,它指定一项计算。 表达式的求值可以产生一个结果(比如2+2的求值产生结果4),...

  • 函数参数入栈与求值顺序

    入栈顺序为从右往左 C++标准没有明确规定求值顺序 实际上,入栈前会先把参数列表中的表达式计算出结果再入栈。后自增...

  • 表达式求值

    表达式求值

  • [编程题] 奇怪的表达式求值

    常规的表达式求值,我们都会根据计算的优先级来计算。比如*/的优先级就高于+-。但是小易所生活的世界的表达式规则很简...

  • python中的eval 函数

    eval() 函数十分强大 —— 将字符串 当成 有效的表达式 来求值 并 返回计算结果 基本的数学计算 In [...

  • 算术表达式的实现,支持加减乘除,括号运算,表达式转二叉树

    基本思路 首先,用户输入的待求表达式,也就是中缀表达式,对于人来说,这个很好理解,但是对于计算机,后缀表达式求值更...

  • 表达式求值(递归下降法)

    表达式求值,无论是逆波兰表达式方法,还是递归下降法,都是采取将表达式进行解析,使得解析之后的结果易于计算,逆波兰表...

  • 计算器专题

    0X00 基础知识 后缀表达式的计算 150. 逆波兰表达式求值 后缀表达式就是这么简单粗暴,碰到一个符号,就从栈...

网友评论

      本文标题:基于C++的表达式计算求值

      本文链接:https://www.haomeiwen.com/subject/juillqtx.html