文档介绍:、I Zr-Zr- 口口
计算器
详细设计说明书
版本
作者:
完成日期:2009-10-3
1 引言
编写目的
该软件详细设计说明书主要是为设计“计算器程序”而编写的详细设计分析, 主要给出该软件总体设、I Zr-Zr- 口口
计算器
详细设计说明书
版本
作者:
完成日期:2009-10-3
1 引言
编写目的
该软件详细设计说明书主要是为设计“计算器程序”而编写的详细设计分析, 主要给出该软件总体设计架构、包含的模块、设计的思想、每个模块的详细设计 原理等信息,从而正确实现软件的编写,并且方便了以后的测试、管理和改进。
背景
待开发软件系统的名称是“计算器程序”。该软件将完成一般的计算操作: 加减乘除四则运算、开方、求倒数、百分数,以及数据的存储操作。对于更高级 的科学运算,如 sin、cos 等暂不实现。
由于程序较小,开发将由本人独立完成,暂时没有期望的用户群体。
程序系统的结构
程序结构从整体上可以大致分为 3 个部分,如表 1 所示。
表 1 程序整体模块划分
模块
标示符
说明
输入数值
Numberinput
通过数字、小数点按键输入一个数值
输入双目操作符
DoubleOptInput
输入+ - * / %等双目运算符进行运算
输入单目操作符
SingleOptInput
输入sqrt、1/x等单目运算符进行运算, 包括MR、MS存储相关的运算
输入数值设计说明
状态图
这部分的状态图表示如图 1 所示。
流程图
输入数值根据状态图可以得出流程图如图 2 所示。
图 2 输入数据流程图
说明
在这种情况下,可以有三种输入数据格式
①整数:如45, 123, 1000等。
纯小数:如 , , , 等。
含有整数部分的小数:, , 。
在以上情况下,对于数字0要有正确的处理方式,如果在输入整数的情况下, 00123 这样的整数是不能存在的, 12000这样的整数是正确存在的。在输入小数 的情况下, 。
程序需要能正确处理这三种数据,这也是测试的依据。
输入双目操作符设计说明
状态图
输入双目运算符的状态图如图3所示。主要运算是加减乘除、百分号运算。
图3双目运算符的状态图
说明
程序实现完全按照图3所示的状态变迁实现。双目运算的根本形式是:N1 opt N2 = Result。N1、N2是两个操作数,opt是双目运算符。其中详细的情况如下。
程序初始状态SO时,双目运算的两个操作数N1=N2=0。
状态变迁路径 1: SO -> S(Num1) -> S(双 opt) -> S(Num2) -> S(=)。这是一般 的计算过程,即25+3= 28, *9= , 3