欢迎来到天天文库
浏览记录
ID:22689168
大小:123.00 KB
页数:5页
时间:2018-10-30
《《java计算器》word版》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、《JAVA程序设计》任务报告课设题目:计算器学生姓名:潘天雄学号:11570122完成日期:2013.10.27成绩:5题目基本要求:编写一个图形界面计算机,具有基本的运算功能。流程图:5结构介绍一、Optr类自定义的运算符堆栈,用来存放优先级低的运算符,用以解决运算时的优先级问题。包括自定义的出入栈、初始化和栈顶元素返回功能二、Opnd类自定义的操作数堆栈,用来存放未被运算的操作数,用以解决运算时的优先级问题。包括自定义的出入栈、初始化和栈顶元素返回功能三、Screen类自定义的label显示缓存,用来将运算结果和操
2、作符进行整理后显示。提供了初始化、数据添加、括号嵌套、整理等功能,使输出更加符合生活习惯四、Number类自定义的数字缓冲区,用来将单个按钮的数字与输入的小数点进行组合使起整理成一个数字以供之后的运算和显示。此类提供一个判空方法,退格方法,清空方法以及进入方法。五、Cal类此类的功能时描述界面并提供事件监听的方法,同时包含了程序入口。六、Compute类包含三个功能函数privatecharPrecee(Optroptr,charc);publiccharCalculate(Optroptr,charc,Opndopn
3、d);publicdoubleOperate(Optroptr,Opndopnd);1)privatecharPrecee(Optroptr,charc)此函数提供了一个优先级表,将缓冲区的运算符与运算符栈栈顶的运算符做优先级比较,并返回优先级的比较结果2)publiccharCalculate(Optroptr,charc,Opndopnd);此函数是逻辑函数,将输入的运算符进行优先级查表比较,根据结果决定将其入栈或直接运算。3)publicdoubleOperate(Optroptr,Opndopnd);此函数是运
4、算函数,根据传递的运算符进行相应运算并返回结果。5附录:源代码:一、Optr类//运算符栈publicclassOptr{privateinttop;//栈顶指针privateintmaxsize;//栈大小privatechararray[];//数据数组publicOptr(intmaxsize){this.maxsize=maxsize;top=0;array=newchar[this.maxsize];array[0]='#';}//初始化栈栈底为'#'publicvoidClean(){top=0;array
5、[0]='#';}//重置栈publicvoidPush(chartemp){array[++this.top]=temp;}//入栈publiccharPop(){returnarray[top--];}//出栈publiccharGetTop(){returnarray[top];}//返回栈顶}5二、Opnd类//运算符栈publicclassOpnd{privateinttop;//栈顶指针privateintmaxsize;//栈大小privatedoublearray[];//数据数组publicOpnd(
6、intmaxsize){this.maxsize=maxsize;top=0;array=newdouble[this.maxsize];}//初始化栈publicvoidClean(){top=0;}//重置栈publicvoidPush(doubletemp){array[++top]=temp;}//入栈publicdoublePop(){returnarray[top--];}//出栈publicdoubleGetTop(){returnarray[top];}//返回栈顶}5
此文档下载收益归作者所有