-
BUAA OO第一次作业总结
简介: 第一单元的作业的主要任务为解析一个包含加、减、乘、乘方以及括号的表达式,其最终任务是处理一个括号可嵌套并含有自定义函数以及求和函数的表达式。 由于三次作业中采用的是增量开发而并未重构,故只展示第三次作业的复杂度分析和UML图,并借此阐述设计思路和架构。 UML图与类结构 主要的类的解释: M -
BUAA_OO_第一单元总结
1. 作业简介 OO第一次作业的主要内容是展开一个含有括号、三角函数、求和函数、自定义函数的表达式,使其不含有多余的括号、求和函数、自定义函数等。在完成化简的基础上,可以对表达式进行同类项合并、三角函数合并等操作,使其长度最小,这样可以获得较高的性能分。 表达式格式的构造采用了形式化的描述,这是一种 -
OO 第一单元总结
OO第一单元总结 第一次作业 题目要求 对表达式进行去括号。表达式由若干个项以加减号连接,项由若干个因子以乘号连接,因子仅包括带符号整数、幂函数和带括号的表达式,不会出现括号的嵌套。 设计思路 参考training的思路,首先建立Expression、Term、SignedInteger、Power -
BUAA-OO-U1-Summary
BUAA-OO-U1-Summary 1 问题描述 第一单元中,我们所要解决的问题是表达式化简,即“去括号”。 由于原表达式中可能出现乘方、自定义函数、三角函数、求和函数等形式以及相互之间的嵌套,因此,如何在去括号、函数带入的同时保证形式的标准,并尽可能简化结果,是需要解决的重点问题。 2 -
OO_第一单元总结
#OO_第一单元总结 ##第一次作业 ####一、题目要求 将包含加、减、乘、乘方以及括号(其中括号的深度至多为 1 层)的单变量表达式,输出恒等变形展开所有括号后的表达式。 ####二、架构 我的建模结构如下 我是用的是预解析模式,对每条运算进行处理。Expression类是运算,存储的基本单元。 -
OO 第一单元总结
OO 第一单元总结 一、作业架构设计与分析 1、第一次作业 UML类图 类的设计 Term 类用来存储单项式(a * x ** b)。 coefficient 为系数。 exponent 为指数。 Expression 类用来存储表达式。 terms 为一个 HashMap,用来存储单项式,该 Ha -
OO第一单元总结
Unit1 综述 第一单元的任务主要是进行包含幂运算的表达式化简,在随后几次的迭代开发后可以实现支持幂函数,括号嵌套,有限个自定义函数(及其嵌套),三角函数与求和函数。主体架构采用递归下降算法拆分表达式为Expr(表达式)、Item(项)、Factor(因子),后对于拆分好的字符串进行计算、化简与合 -
OO_Unit1_单元总结
OO_Unit1_单元总结 part 0 综述 面向对象课程第一单元作业的主题是对带有括号的表达式进行化简,最终化简到只含有必要括号的形式。从第一次作业的仅含有幂函数因子、常数因子和表达式因子到第二次作业加入三角函数因子、自定义函数因子和求和函数因子,再到第三次作业加入了支持嵌套因子的三角函数。 在 -
OO第一单元总结
OO第一单元总结 一、第一次作业 1、类图 第一次作业的类图为下图白色部分: 优点:采用了递归下降的方法对表达式进行解析,层次鲜明,代码相对简单。 缺点:对表达式的预处理采用字符串操作,容易出现意料之外的bug,且预处理部分选择了面向过程编程,导致main函数很长。 2、架构设计 为了便于解析,我将 -
OO第一单元总结
转眼间,面向对象第一单元的三次作业已经结束。一路走来,发现了自己很多问题,当然也有一些做的好的地方,都将在这篇博客中做一总结。前车之鉴,后事之师,希望我未来的OO学习能在这一单元经验的基础上走得更顺利一些。