设计一个图形界面的计算器完成简单的算术运算-JAVA课程设计Word文档格式.docx
《设计一个图形界面的计算器完成简单的算术运算-JAVA课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《设计一个图形界面的计算器完成简单的算术运算-JAVA课程设计Word文档格式.docx(33页珍藏版)》请在冰豆网上搜索。
3)课程设计论文编写要求
(1)课程设计任务及要求
(2)设计思路--工作原理、功能规划
(3)详细设计---数据分析、算法思路、类设计、功能实现(含程序流程图、主要代
码及注释)、界面等。
(4)运行调试与分析讨论---给出运行屏幕截图,分析运行结果,有何改进想法等。
(5)设计体会与小结---设计遇到的问题及解决办法,通过设计学到了哪些新知识,
巩固了哪些知识,有哪些提高。
(6)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)
7报告按规定排版打印,要求装订平整,否则要求返工;
8课设报告的装订顺序如下:
封面---任务书---中文摘要---目录 正文-
--附录
代码及相关图片
(9)严禁抄袭,如有发现,按不及格处理。
4)答辩与评分标准:
(1)考勤:
10分;
(2)程序检查:
30分;
(3)答辩回答问题:
20分
(3)课程设计报告:
40分;
5)参考文献:
[1]耿祥义.《Java2实用教程(第三版)》北京清华大学出版社2006.8
[2]朱福喜.《Java语言程序设计》.北京清华大学出版社.2005
[3]朱福喜,尹为民,余振坤.《Java语言与面向对象程序设计》.武汉 武汉大学出
版社.2002
6)课程设计进度安排
内容 天数 地点
构思及收集资料7 图书馆
编码与调试 5 实验室
撰写论文3 图书馆、实验室
学生签名:
09年 01月 05日
课程设计论文评审意见
(1)考勤(10分):
优()、良()、中()、一般()、差();
(2)程序检查(30分):
(3)答辩回答问题(20分):
(4)设计报告(40分):
评阅人:
职称:
讲师年月日
目录
一、课设任务及要求 1
二、需求分析2
三、设计思路3
四、详细设计5
五、运行调试与分析讨论 9
六、设计体会与小结 14
七、参考文献15
附录 16
中文摘要
Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。
用Java实现的HotJava浏览器,显示了Java的魅力:
跨平台、动感的Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。
另一方面,Java技术也不断更新。
Java平台由Java虚拟机和Java应用编程接口构成。
Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
现在Java平台已经嵌入了几乎所有的操作系统。
这样Java程序可以只编译一次,就可以在各种系统中运行。
Java分为三个体系J2SE,J2EE,J2ME。
说起计算器,值得我们骄傲的是,最早的计算工具的诞生地是中国。
在17世纪初,西方国家的计算工具才有了较大的发展,英国数学家纳皮尔发明的"
纳皮尔算筹"
英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺
不仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,进而成为了现代社会应用广泛的计算工具。
关键词:
javaJava平台 计算器课设任务及要求
1.课设任务
这次课程设计选择的题目为设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算。
这次课程设计的基本要求为设计的计算器应用程序可以完成加法、减法、乘法、除法和取余运算,且有小数点、正负号、求倒数、退格和清零功能。
拓展功能根据自己的能力添加。
这次课程设计的我选择添加的拓展功能为开平方根,平方,立方,判断素数,求log的功能。
本程序主要练习使用布局管理器设计一个计算器的界面,并练习使用事件监听器处理数据的输入,并完成相关的计算。
数据和运算符号的存储采用动态链表这种数据结构实现。
这次课程设计选择的Java运行环境为:
WindowsXPsp3+Eclipse+JDK1.6
二、需求分析
1.系统功能需求分析
计算器是现在一个普遍应用的工具,能够解决许多人所无法计算的数据,节省大量宝贵的时间。
2.系统功能分析
为了实现计算器系统的功能.主要有二个功能模块:
输入、输出。
3.系统设计原则
基于计算器系统要具有适用性广、操作简便等特点.本系统预计要达到以下几个目标:
1、满足以上的功能要求;
2、能够运行在常见的计算机及其配置上;
三、设计思路
1.关于布局问题
本次课程设计程序继承来自框架类Frame,总体布局上选用布局管理器BorderLayout:
1将单行文本框加入到“North”区域
2将面板panel加入到“Center”区域,同时panel包含了各种数字按钮和符号按钮。
面板panel采用Girdlayout布局,选用5行*5列,将各种按钮添加到面板panel,并增加按钮监听事件。
布局完成后的效果图如下:
2.关于数据存储问题
计算器完成的是一个数学表达式,本次课程设计我选用的是使用链表
Linkedlist类来存储数字和运算符号。
程序运行后,输入的所有数字及运算符号都全部存储在链表中,待最后运算时,再一一求出来进行计算。
3.关于事件监听的处理问题
计算器的各种按钮都需要一个对象来进行监视,以便对发生的事件做出处理。
计算器的各种按钮通过调用相应的方法将某个对象作为自己的监视器。
例如计算器中的数字按钮,其方法为:
AddActionListener监视器;
对于获取了监视器的数字按钮,通过相应的操作就会导致事件的发生,并通知监视器,监视器就会做出相应的处理。
四、详细设计
1.计算器系统主要功能模块
1、系统主要模块实现的功能
系统输入模块实现数字以及计算符号输入的功能,输出模块的结果在文本框中实现显示。
2、系统输入窗体实现的效果
系统输入窗体设计效果如图所示:
上图为按数字键1234567890后,在文本框中的显示
3、系统主要模块功能描述功能描述:
菜单项“计算器”主要服务于使用者.它包含了“输入”、“输出”、两个功能。
输入功能:
当使用者将数字输入后,会出现数字的显示;
当使用者将计算符号输入时候会有计算符号的录入。
输出功能:
点击“输出”选项后.可实现计算的结果。
2.系统的实现1 系统源文件类之间的关系计算器系统共有3个java源文件:
Calculator,NumberButton,OperationButton。
主要类之间的主要关系如图下图所示
计算器系统的类关系图
2、系统源文件类实现的功能
Calculator.java文件生成的类该JAVA文件生成的类负责创建计算器的主窗口及各种运算的实现。
该类含有main方法,整个程序从此类开始执行
NumberButton.java该文件生成的类负责为主类创建数字按钮对象,使用鼠标单击数字按钮可依次输入参加运算的数值的各位数字
OperationButton.java该文件生成的类负责为主类创建运算符号按钮对象。
使用鼠标单击运算符号可选择所要进行的运算
下表为表格形式
序号 文件名主要功能
1Calculator.java 该JAVA文件生成的类负责创建计算器的主窗口。
2NumberButton.java该文件生成的类负责为主类创建数字按钮对象,使用鼠标单击数字按钮可依次输入参加运算的数值的各位数字
3OperationButton.java该文件生成的类负责为主类创建运算符号按钮对象。
3.系统类的成员变量及方法描述
1主类Calculator
①成员变量
Calculator类成员变量表
成员变量描述变量类型名称
数字按钮数组NumberButton[]NumberButton
运算符号按钮数组OperationButton[]OperationButton
小数点按钮JButton小数点按钮正负号按钮JButton正负号按钮退格按钮JButton退格按钮
平方按钮JButton平方按钮清零按钮JButton清零按钮等号按钮JButton等号按钮
显示计算结果JTextFieldresultShow储存数据的链表LinkedListmylist求平方根JButtonsqrt
判断素数 JButton 素数
log JButton log
立方按钮 JButton 立方按钮倒数按钮 JButton 倒数按钮
②方法
Calculator类方法
名称 功能 备注
Calculator 创建窗口 构造方法
ActionPerfomed 处理ActionPerfomed事件接口方法
Main 程序开始运行
(2)NumberButton类①成员变量
NumberButton类变量
成员变量描述变量类型 名称按钮代表的数字 Intnumber
NumberButton类方法方法名功能 备注
NumberButton创建数字按钮 构造方法
getNumber获取按钮代表的数字
(3)OperationButton类
OperationButton类成员变量成员变量描述变量类型 名称
按钮代表的符号 StringOperator
OperationButton类方法方法名功能 备注
OperationButton 创建符号按钮