




已阅读5页,还剩91页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计课程设计报告题 目: 计算器的设计实现 院 (系): 计算机学院 专业班级: 学生姓名: 学 号: 指导教师: 20 12 年 6 月 4 日至 20 12 年 6 月 15 日华中科技大学制计算器的设计实现课程设计任务书一、设计(调查报告/论文) 题目计算器的设计实现二、设计(调查报告/论文)主要内容总体功能:计算器具有基本的计算功能,而且还有显示计算过程、保存计算过程之功能。具体功能与要求:1、单击“计算器”上的数字按钮(0、1、2、3、4、5、6、7、8、9)可以设置参与计算的运算数。2、单击“计算器”上的运算符按钮(+、-、*、/)可以选择运算符号。3、单击“计算器”上的函数按钮可以计算出相应的函数值。4、单击“计算器”上的“=”按钮显示计算结果。5、单击“保存”按钮可以将文本区中的全部计算过程保存到文件:单击“复制”按钮可以将文本区中选中的文本复制到剪切板;单击“清除”按钮可以清除文本区中的全部内容。三、原始资料1.面向对象程序设计课程设计指导书2. 耿祥义JAVA 大学实用教程北京:清华大学出版社,2009四、要求的设计(调查/论文)成果1.课程设计报告2.课程设计软件五、进程安排布置任务,查找资料、需求分析 1 天总体设计 1 天详细设计 1.5 天编制源程序实现 3.5 天测试与修改 1 天撰写课设报告 2 天六、主要参考资料1 张广彬. Java 课程设计案例精编(第二版).北京:清华大学出版社, 2011. 2 耿祥义. Java 课程设计(第二版).北京:清华大学出版社, 2008.3 耿祥义JAVA 大学实用教程北京:清华大学出版社,20094 邹林达陈国君 Java2 程序设计基础北京:清华大学出版社,20105 邹林达Java2 程序设计基础实验指导北京:清华大学,2010指导教师(签名):20 年 月 日目 录1 需 求 与 总 体 设 计 11.1 计 算 器 需 求 分 析 11.2 功 能 描 述 11.3 系 统 功 能 图 11.3 系 统 主 要 类 图 22 详细设计 32.1 类 32.2 成 员 变 量 32.3 方 法 42.4 详 细 类 图 43 编码实现 53.1 计 算 器 详 细 代 码 实 现 54 系统测试 284.1 界面测 试 284.2 计算器功能测试 284.2.1 四则运算 284.2.2 三角函数运算 294.2.3 特殊运算 294.2.4 计算过程清除 304.2.5 计算过程保存 304.2.6 关于计算机说明 31总 结 32(要 求 :目 录 题 头 用 三 号 黑 体 字 居 中 书 写 ,隔 行 书 写 目 录 内 容 。目 录 中 各 级 题 序及 题 标 用 小 四 号 黑 体 字 )11 需 求 与 总 体 设 计1.1 计 算 器 需 求 分 析为了减轻人们日益繁琐的工作压力和负担,实现高效统计和运算,在普通计算器上加入更多样更便捷的功能势在必行,普通计算器上加入三角函数功能和保存功能,可以大大减轻会计以及财务部门统计账目的压力。此次逻辑算术设计实践,利用 java 面向对象程序设计和 SWT 技术针对该程序显示GUI 用户界面,能实现四则运算以及扩展函数运算,并用图形界面实现。够培养我们严谨务实的工作态度以及提高我们分析问题和解决问题的能力,也对于巩固和加深对面向对象程序设计的基本概念、基本理论和实现技术的理解起到了一定的意义。1.2 功能描述(1)单击“计算器”上的数字按钮(0、1、2、3、4、5、6、7、8、9)可以设置参与计算的运算数。(2)单击“计算器”上的运算符按钮(+、-、*、/)可以选择运算符号。(3)单击“计算器”上的函数按钮可以计算出相应的函数值。(4)单击“计算器”上的“=”按钮显示计算结果。(5)单击“保存”按钮可以将文本区中的全部计算过程保存到文件:单击“复制”按钮可以将文本区中选中的文本复制到剪切板;单击“清除”按钮可以清除文本区中的全部内容。1.3 功能图如下:图 1-1 系统主要功能图计算器的设计实现复制显示框内容显示运算结果 保存计算过程函数计算 结果清除加、减、乘、除计算错21.4 系统主要类图图 1-2 系统主要类图Class Calc() 显示“+” “”按钮显示“*” “/”按钮显示 Sin 按钮显示 Cos 按钮显示 Tan 按钮显示退格按钮显示数字 0-9 按钮显示清除按钮显示结果文本框显示计算过程显示文本框四则运算函数运算特殊运算计算过程保存、清楚计算过程复制到剪贴板main()显示按钮数据计算计算过程保存、清除32 详细设计2.1 类clas calc: 该类是程序的主类,显示了界面窗口,数据计算,计算过程保存、复制到剪贴板,以下是该类的说明。2.2 成员变量 DecimalFormat df 设置数据输出精度(对于 double 型值) boolean clickable 控制当前能否按键 double memory 内存中存储的 double 型数字 int memory 内存中存储的 int 型数字 double vard, 用来保存 double 型数据的中间值 double answerd 用来保存最后结果 short key 用来保存当前进行何种运算, short prekey 用来保存前次进行何种运算 int w=0 按钮前一动作为结果运算动作,比如“=”或是开方 int w=1 按钮前一动作为数值输出或是“-/+” String mid 中间运算过程记录值 Display d 与系统交互类实例 Shell s 容器窗口实例 Text textanswer 计算结果显示框 Text t2 计算过程显示窗口 Menu m 菜单 bar 实例 Menu filemenu 菜单变量 MenuItem bzx “标准型”菜单项目变量 Button b0 b9 数字键 0 到 9 Button buttonSave 保存键按钮,保存计算过程 Button buttonCopy 复制键按钮,复制计算过程到剪贴板 Button buttonSqart 开方键按钮,进行开方运算 Button buttonMod “%”键按钮,进行模运算 Button buttonDot 小数点按钮 Button butonAdd buttonSub buttonMul buttonDiv “+” “-” “*” “/”键按钮,进行加减乘除运算 Button buttonSin buttonCos buttonAsin buttonAcos buttonLog “sin”cos”asin”acos”按钮,进行三角函数运算42.3 方法calc()是程序的主要方法,负责构造友好界面窗口,显示按钮、文本框,调用监听器进行按钮功能判断监听,实施四则运算和特殊函数,显示运算结果,保存运算结果到文件和剪贴板。2.4 详细类图图 2-1 系统详细类图Class CalcDecimalFormat df boolean clickabledouble memory int memorydouble vard, double answerdshort key short prekeyint w String midText textanswer Menu filemenuDisplay d Shell s Menu m MenuItem bzx Button b0 b9Button buttonSave buttonCopybuttonSqart buttonMod buttonDot butonAdd buttonSub buttonMul buttonDivButton buttonSin buttonCos buttonAsin buttonAcos buttonLogCalc()Class main()calc ssclass calc53 编码实现3.1 计 算 器 详 细 代 码 实 现package ZY04;import java.text.DecimalFormat;import java.awt.Color;import java.io.*;import java.lang.NumberFormatException;import org.eclipse.swt.*;import org.eclipse.swt.events.*;import org.eclipse.swt.graphics.*;import org.eclipse.swt.layout.*;import org.eclipse.swt.widgets.*;public class calc DecimalFormat df = new DecimalFormat(“0.#“); /设置数据输出精度(对于 double 型值)boolean clickable; /控制当前能否按键double memoryd; /内存中存储的 double 型数字int memoryi;/内存中存储的 int 型数字double vard, answerd; /用来保存 double 型数据的中间值(vard)和最后结果(answerd)short key = -1, prekey = -1; /key 用来保存当前进行何种运算,prekey 用来保存前次进行何种运算int w=0;/w=1,按钮前一动作为结果运算动作,比如“=”或是开方,w=0,按钮前一动作为数值输出或是“-/+ ”String mid=“;/中间运算过程记录值6Display d;Shell s;calc()d=new Display();s=new Shell(d);s.setSize(220,380);s.setImage(new Image(d,“c:123.jpg“);s.setText(“计算器 “);/*/设置菜单Menu m=new Menu(s,SWT.BAR);/创建查看菜单项final MenuItem file = new MenuItem(m,SWT.CASCADE);file.setText(“查看(v)“);final Menu filemenu =new Menu(s,SWT.DROP_DOWN);file.setMenu(filemenu);final MenuItem bzx=new MenuItem(filemenu,SWT.RADIO);bzx.setSelection(true);bzx.setText(“标准型(T) Alt+1“);final MenuItem kxx=new MenuItem(filemenu,SWT.RADIO);kxx.setText(“科学型 (S) Alt+2“);final MenuItem cxy=new MenuItem(filemenu,SWT.RADIO);cxy.setText(“程序员 (P) Alt+3“);final MenuItem tjxx=new MenuItem(filemenu,SWT.RADIO);tjxx.setText(“统计信息(A) Alt+4“);final MenuItem separator1 =new MenuItem(filemenu,SWT.SEPARATOR);/分割线final MenuItem lsjl=new MenuItem(filemenu,SWT.CHECK)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国2025年市场展望与薪酬报告
- 2024年农业职业经理人数字营销试题及答案
- 会计专业核心课程
- 宠物驱虫考试题及答案大全
- 初三政治课程内容
- 肩颈专业知识培训课件
- 职工健康知识培训课件
- 调酒师的情绪管理与调控题及答案
- 美甲甲床知识培训课件
- 美容师护理知识培训课件
- 古代汉语-形考任务1-3-国开-参考资料
- 盐源县县属国有企业招聘工作人员真题2024
- 工业废水处理技术作业指导书
- 2025年中国航天日知识竞赛考试题库300题(含答案)
- 体检中心质量控制指南
- 2025年第六届中小学全国国家版图知识竞赛测试题库及答案
- 二级妇产医院标准
- 《幼儿安全》·铅笔不能咬PPT课件
- 坊子实验小学《学情会商制度》
- 国际商务函电Unit-5-Quotations--offer-and-counter-offerPPT优秀课件
- 家庭医生签约服务记录表模版.doc
评论
0/150
提交评论