-
OO第一单元总结
OO第一单元总结博客 一、程序结构分析 1. 第一次作业 思路分析 第一次作业需要实现简单的单变量多项式括号的展开,考虑到这次作业的BNF描述相对简单,而且加入了一定的数据限制,所以在递归下降解析和手动解析之前我选择了后者。针对表达式、项和因子分别递推出相应的正则表达式进行解析并分别为止构建相应的类 -
BUAA_OO 第一单元
BUAA_OO 第一单元 第一次作业 1 题目要求 读入一个包含加、减、乘、乘方以及括号(其中括号的深度至多为 1 层)的单变量表达式,输出恒等变形展开所有括号后的表达式。 2 架构 2.1预处理 通过预处理完成了 空白符的删除 连续+-的删除 表达式的幂次展开,即将(x+1)**2替换为(x+1) -
面向对象程序设计Unit1 总结
第一单元总结性博客 1 架构设计思路和程序结构 1.1 总体设计思路 第一单元的基本任务是拆掉表达式中的非必要括号,保留必要括号。布置方式采用迭代式,让我体验到了作为”乙方“不断被”甲方“胁迫训练的感受。针对这个单元的基本任务,我将整个项目拆解成如下的许多小任务,我将从总体设计和布局上介绍每个小任务 -
OO第一单元总结
#面向对象设计与构造第一单元博客 第一次作业 考虑到以后作业的迭代,虽然本次作业用正则表达式也能完成,还是采用递归下降的方法,把括号嵌套也做了。 ###类图展示 classDiagram class Main { +main() } class Parser{ -ArrayList<Token> t -
OO Unit1 总结
Unit1 综述 第一单元的任务主要是进行包含幂运算的表达式化简,在随后几次作业的迭代开发后可以实现支持幂函数,括号嵌套,有限个自定义函数(及其嵌套),三角函数与求和函数。主体架构采用递归下降算法拆分表达式为Expr(表达式)、Term(项)、Factor(因子),后对于拆分好的字符串进行计算、化简 -
OO第一单元总结博客
#1.第一次作业 ##1.1思路分析 第一次作业主要任务是完成对表达式的去括号,在完成第一次训练的作业后使用梯度下降法分析表达式,将表达式,项,因子逐层分离。在完成表达式转换为各项因子后,难点就在于项与项之间的相乘以及符号的转化,表达式之间的因子用+,—号连接,而项之间因为可能又存在表达式的因子无法 -
2022 BUAA OO 第一单元总结
为期三周的oo的unit1终于过去了,在这三周中在oo上付出的时间是最多的,同时收获也是最多的。现在来总结一下这个单元。 最终问题描述 表达式→ 空白项 [加减 空白项] 项 空白项 | 表达式 加减 空白项 项 空白项 项 → [加减 空白项] 因子 | 项 空白项 '*' 空白项 因子 因子→ -
2022北航面向对象第一次作业分享及总结
2022北航面向对象第一次作业分享及总结 本次作业由三次任务组成,从2.28号开始,历经三周的迭代开发,实现了对表达式结构的建模,并且实现了多层嵌套表达式及函数调用的括号展开与化简;同时,本次作业也是笔者第一次基于面向对象的思想进行工程开发以及层次化设计,本篇将主要围绕设计架构以及代码度量两方面进行 -
OO_第一单元总结
前言 第一单元的题目是表达式化简,涉及因子: | |--变量因子 | |--幂函数 | |--三角函数 | |--自定义函数调用 | |--求和函数 |--常数因子 | |--带符号整数 |--表达式因子 . |--'('表达式')' 项由因子相乘构成,表达式由因子相加/减构成。 大致要求:展开所有 -
BUAA-OO-Unit1 Summary
第一次作业 代码设计 代码架构如下: 可以看到每个类没啥联系,就挺面向过程。 刚开始没啥思路,就打算先按预解析模式写,然后试一试能不能实现预解析的功能。 第一次的表达式比较简单,可以将表达式每一项拆解成系数和指数,可以设置一个HashMap存指数和系数的关系,设置一个HashMap存Id与多项式的关