一:引言
目前手机可以说是普及率非常高的电子设备了,由于其便于携带,使用
方便,资费适中等等原因,现在手机已经在一定程度开始代替固定电话的通话功能,以及一些原来电脑软件上的功能了。手机上的软件也随着手机的发展变得丰富起来了,时至今日已经出现了很多专门制作手机软件的公司,虽然制作的多是游戏软件,但是一些辅助性的工具软件也有了很多.我们在此次系统中所做的工作主要是设计整个系统以及利用编程语言实现整个系统,使系统能够正确的运行计算功能。
二:需求分析
状态定义:能满足基本的数学运算。具体要求如下:
1,刚启动计算器时的状态:开始计算按键开始键"ON"
2.清零:计算刚启动时,或者任何时候键入了清零键,计算器所处的状态。2.一个操作数:输入了一个操作数时计算器所处的状态,如键入“2”后的状态,此时操作数为“2”,或者依次键入“3”、“8”后的状态,此时操作数为“38”。
3.运算结果:键入了“=”键后计算器所处的状态,如依次键入“3+5=”之后计算器的状态。在此状态如果输入数字,输入的数字将作为第一个操作数,开始一次新的计算。
4.一个操作数和一个两元符号:输入了一个操作数和加减乘除中的一个键后计算器的状态,如依次输入“2+”或“31×5=÷”之后计算器的状态。
5.操作数两元符操作数:输入了一个操作数、一个加减乘除符号和另一个操作数后计算器所处的状态,如依次键入“30÷4”或“3+5=÷5”后计算器的状态。
6.操作数两元符运算结果:输入了一个操作数、一个加减乘除符号和另一个操作数后紧接着键入开方键计算器所处的状态。
7.错误:执行非法计算后所处的状态,如执行÷0计算或者对负数的开方计算后的状态。比如6/0后计算的结果是“0不能做除数”。
三:源码地址
https://github.com/al1016547876/test/tree/master
四:模块设计
运行程序后系统开始监听用户的按键输入,每次输入系统都会判断一次用户输入的类型,是数字还是运算符号或者是清除,判断完后分成不同类型如数字,符号,基本运算等等进行进一步的处理,根据用户的要求继续进行下一步的操作,最后计算出最终结果并显示在显示区。计算模块详细设计 系统要完成整个的计算器的计算功能,那么计算模块就是整个系统的重点模块。没有计算模块系统就不能顺利的完成计算,就无法达到用户的要求。所以计算模块的设计也是本次系统设计中的重点。系统想要能在屏幕上显示出计算器的样子要有整体的布局,在本模块中要完成布局的具体设计,使用户能够看到整个计算器的画面。同时系统想完成计算功能必须要处理用户的输入,当输入模块的监听传到计算模块中时,计算模块就要根据相应的方法进行进一步的处理。这部分主要是对输入进行的逻辑判断,基本会通过if else来实现逻辑判断。
运行截图:
五:实验心得
通过此次实验,进一步巩固了android的相关知识,但实验中遇到许多问题,花了很长时间才得以解决。