计算机软件技术实习 项目一 简单计算器的实现(实验准备)1-(1)
目录
一、需求分析
二、重难点
三、编程语言
四、开发工具/平台
一、需求分析
1. 能通过设计的按钮控件输入并实现算术表达式,表达式在文本框中显示,运算结果输出显示;
2.保存和浏览历史运算记录;
3.能够检验算术表达式的合法性;
4.能够实现混合运算的求解,算术表达式中包括加、减、乘、除、括号等运算符;
5.要求交互界面友好,程序健壮。
二、重难点
JS代码实现请访问:
《计算机软件技术实习 项目一 简单计算器的实现(所涉及的算法JS代码实现)1-(2)》https://blog.csdn.net/qq_53500812/article/details/121597097?utm_source=app&app_version=4.18.0&code=app_1562916241&uLinkId=usr1mkqgl919blen
1.中缀表达式->后缀表达式
基于堆栈的算法:从左到右扫描每一个字符。
(1)如果扫描到的字符是操作数(如a、b等),就直接输出这些操作数。
(2)如果扫描到的字符是一个操作符,分三种情况:
①如果堆栈是空的,直接将操作符存储到堆栈中(push it)
②如果该操作符的优先级大于堆栈出口的操作符,就直接将操作符存储到堆栈中(push it)
③如果该操作符的优先级低于堆栈出口的操作符,就将堆栈出口的操作符导出(pop it), 直到该操作符的优先级大于堆栈顶端的操作符。将扫描到的操作符导入到堆栈中(push)。
(4)如果遇到的操作符是左括号"(”,就直接将该操作符输出到堆栈当中。该操作符只有在遇到右括号“)”的时候移除。这是一个特殊符号该特殊处理。
(5)如果扫描到的操作符是右括号“)”,将堆栈中的操作符导出(pop)到output中输出,直到遇见左括号“(”。将堆栈中的左括号移出堆栈(pop )。继续扫描下一个字符
(6)如果输入的中缀表达式已经扫描完了,但是堆栈中仍然存在操作符的时候,我们应该讲堆栈中的操作符导出并输入到output 当中。
方法转自:中缀表达式转后缀表达式https://blog.csdn.net/qianyayun19921028/article/details/89228263?utm_source=app&app_version=4.18.0&code=app_1562916241&uLinkId=usr1mkqgl919blenhttps://blog.csdn.net/qianyayun19921028/article/details/89228263?utm_source=app&app_version=4.18.0&code=app_1562916241&uLinkId=usr1mkqgl919blen
2.后缀表达式的计算。
堆栈法计算后缀表达式的值
(1)从左到右扫描后缀表达式字符串
(2)初始化一个空栈
(3)如果扫描到数字,那么就直接入栈
(4)如果被扫描的字符是一个二元运算符,那么就连续出栈两次,获得两个字符,元素出栈后,应用运算符进行计算,并将结果压栈
(5)重复3)和4)的操作,直至扫描完字符串
(6)扫描完所有字符串之后,栈中只剩一个元素,该元素就是最终结果,将其出栈并返回。
方法转自:后缀表达式的计算https://blog.csdn.net/qianyayun19921028/article/details/89228263?utm_source=app&app_version=4.18.0&code=app_1562916241&uLinkId=usr1mkqgl919blenhttps://blog.csdn.net/qianyayun19921028/article/details/89228263?utm_source=app&app_version=4.18.0&code=app_1562916241&uLinkId=usr1mkqgl919blen
三、编程语言
html、css、JavaScript
四、开发工具/平台
微信开发者工具
计算机软件技术实习 项目一 简单计算器的实现(实验准备)1-(1)相关推荐
- 计算机软件技术实习项目二(一) 贪吃蛇项目准备
计算机软件技术实习项目二(一) 贪吃蛇项目准备 文章目录 计算机软件技术实习项目二(一) 贪吃蛇项目准备 一.贪吃蛇介绍 二.开发工具 三.实现原理 1.消息与消息队列 2.消息映射 3.设备环境 4 ...
- 计算机软件实习项目一 简单计算器 (Qt实现计算器界面) 12-5
UI用户界面 使用Qt Designer对计算器的界面进行制作 目录 UI用户界面 界面设计 功能描述 界面浏览 新功能 1.小数点前后自动补0 2.加减乘除自动切换 3.不允许的操作按了不会生效 4 ...
- 计算机软件技术实习预习日志
计算机软件技术实习预习日志 目录 计算机软件技术实习预习日志 文章目录 实验项目 一.实验要求 二.开发工具 三.实验原理 1.后缀表达式计算法 前缀表达式 中缀表达式 后缀表达式 中缀表达式转换为后 ...
- 计算机软件技术实习02
计算机软件技术实习 第二周学习记录 实验1--支持算术表达式求解的计算器 前言 上周说到,我选择用MFC来完成本次实验.那么,现在我来总结一下本周的学习成果. 退格功能的实现 由于我设置的文本框是通过 ...
- 计算机软件技术实习01
计算机软件技术实习 第一周学习记录 实验1--支持算术表达式求解的计算器 前言 这是我第一次真正接触到计算机软件技术的实战内容,说实话我觉得这次的实习任务对我来说非常具有挑战性,有很多知识都是我目前还 ...
- Android 实战项目:简单计算器
文章目录 实战项目:简易计算器 1.需求分析 2.界面设计 3.关键代码 1.输入按键的合法性校验 2.执行运算并显示计算结果 简单计算器 - 详细操作步骤 总结 实战项目:简易计算器 1.需求分析 ...
- 软件技术实习项目:实验三、迷宫游戏设计
目录 1.系统简介 1.1设计背景 1.2开发工具及环境 2.系统分析与设计 2.1设计目的 2.2功能需求 2.3系统功能代码设计 2.3.1算法说明 3.系统调试 3.1编写源程序界面 4.设计总 ...
- 软件技术实习项目:实验二、贪吃蛇游戏
目录 1.系统简介 1.1设计背景 1.2开发工具及环境 2.系统分析与设计 2.1设计目的 2.2功能需求 2.3系统功能代码设计 2.3.1包和类的说明 2.3.2简单计算器的源代码清单 3.系统 ...
- 22-23学年计算机软件技术实习1——计算器
目录 学习目标 1.1准备工作 1.1.1搭建QT开发环境 1.2用户界面UI设计 1.2.1显示模块 1.2.2按键模块 1.3功能实现 1.3.1输入输出反馈 1.3.2退格与清除功能 1.3.3 ...
最新文章
- iOS标准库中常用数据结构和算法之内存池
- SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例
- mysql数据库入门教程(9):数据的常见约束
- HDU - 4990 Reading comprehension(矩阵快速幂,水题)
- [优先队列][堆] Luogu P4505 组合子逻辑
- android自定义view设置高度,自定义View的宽高设定
- 浮动div中的图片垂直居中
- MTK平台调试加密芯片ATSHA204A
- TagSupport标签的应用
- Java反射学习总结终(使用反射和注解模拟JUnit单元测试框架)
- 一、财务框架与基础知识
- 腾讯入局“低代码”赛道:无需敲码,快速生成一个完整系统!
- 《三国演义》中的火烧赤壁居然也是假的!!
- redis:客户端管理
- 台式计算机默认关机变注销,Win7电脑点关机变成注销怎么办?
- 初探Meterpreter-emaste_r
- jotform 设计器_如何使用JotForm简化表单构建
- Chromatix 7 使用<2>
- [RK3288][Android6.0] 调试笔记 --- Activity多次调用finish()引起的Warning
- CUID卡抠抠复制浅谈