当前位置:
文档之家› JAVA课程设计 计算器小程序报告
JAVA课程设计 计算器小程序报告
1.2 课程设计的主要思想
首先要设计一个登录界面,必须输入密码并正确才能进入到计算器界面; 对于此计算器程序,要设计其 GUI 界面,总体界面有一个文本框,18 个按钮, 总体界面用 BorderLayout 布局。 文本框放置在最 NORTH,然后 0 到 9 以及+,-,*,/的按钮放置到一个面板 Panel 中,添加到整体布局的 CENTER,界面设计完成。 布局设计好后再添加按钮事件。对于此程序要考虑到点击加、减、乘、除按 钮时是否有点击数字按钮,如果是第一次点击数字按钮或者是点击数字按钮前点 击了加、减、乘、除按钮则直接把数字按钮的数值设置到文本框中,否则则应把 文本框中的内容加上你所点击按钮的数值设置到文本框中。 在进行加、减、乘、除计算时要把点击加、减、乘、除按钮之前的数值保存 下来,运算时是这个被保存下来的数值和文本框中的数值加、减、乘、除。 最后还需要一个退出界面。 重要的是必须把三个界面的代码放在同一个包里。
4
2.需求分析
2.1 功能需求分析
在日常生活中经常需要用到计算器,比如科学计算、数值计算、 会计业务等,在 Applet 中实现一个精巧实用的计算器,可以让用户 在使用网站服务的同时,可以很方便地进行数据运算,可增加页面的 实用性,同时让用户的操作也更方便与快捷。本项目需要实现一个用 Java 中的类、对象、继承、方法等概念以及 awt 主键和 Applet 的基 本框架和事件处理的方法。简单的四则运算的计算器,拥有加、减、 乘、除功能,除此之外要三个界面即:登录面,计算器主界面,退出 界面,要剧本的功能就是点击登录界面可以前往计算器主界面,退出 可以到达退出界面。
3
1.课程设计概述
1.1 利用 java 编写计算器,使之具备一定的功能:
(1)使用图形用户界面:一个文本框;0-9 数字按钮;加、减、乘、除运 算符;“等于”符号;复位按钮; (2)完成整数、实数的四则运算(加、减、乘、除); (3)通过按钮点击实现数据的复位(清零); (4)实数运算中小数位的精度一致。
(1)本项目分为三个界面,登录,计算器,退出三个界面,点击登录输入 密码正确就可以登录到计算器界面,退出计算器界面还可以再次登录。(2) 这是计算器中的一种:简单计算器,本项目用到了 Java 中的 GUI 界面和 swing 组件以及 awt 布局,所以简单易用,它能完成如下的几个小功能:点 击按钮中的数字键和运算符键就能进行简单的加、乘、乘、除求模四则运 算 ;还能通过用户自己在文本框中输入数字,进行简单运算 ; 如果输入有误时可以点“清除”撤销后重新输入新数据 .
4.详细设计说明、调试
4.1 程序流程图:
6
开始
登录界面 计算器界面
运
运
功
算
算
能
器
符
模
数
号
块
据
继续
输出结果
再次登录
退出界面
退出
4.2 部分代码说明
段代码主要是对程序的主框架进行相应的设置。 Frame f=new Frame("计算器小程序");
f.setBackground(Color.lightGray); f.setForeground(Color.blue)//数字颜色
3、总体设计方案
------------------------------------------------
--5
3.1
界
面
设
计
----------------------------------------------------------------
------5
3.2
功
能
介
绍
--------------------------------------------------------------------
3 总体设计
5
3.1 界面设计
界面设计要求用 GUI,界面设计中有用到 swing 组件的 TextField、Button, 和 JLable 用到 awt 中的 BorderLayout 和 GridLayout 布局管理方式,其图形界面 如下:
登陆界面
计算器主界面
退出提示界面 3.2 功能介绍
f.add(p1,BorderLayout.NORTH); f.add(p2,BorderLayout.CENTER); f.add(p3,BorderLayout.SOUTH); f.setSize(350,300);//设置面板大小 f.setVisible(true);//设置为可见 添加相应的按钮
2.当除数为0时,结果显示“除数不能为零” “if(d3==0) tf.setText("除数为零")”
9
3.预计“32+3=35”,结果显示“35.0”
4.预计“5-7=-2”,实际结果显示“-2.0”
5. 当不需要计算时,点击“退出”或关闭窗口时会弹出退出界面,会提示 你是否真的退出,如需要重新登录就点击“再次登录”,如不需要登录就点 击“退出”或关闭窗口。
-11
6.1
登
陆
界
面
代
码
--------------------------------------------11
6.2
计
算
器
主
界
面
--------------------------------------------12
6.3
退
出
界
Байду номын сангаас
面
代
码
-------------------------------------------15
||command=="+"||command=="-")//判断是否输入运算符 {
y=1; s2=command; } if(y==1&&command!="*"&&command!="/"
&&command!="+"&&command!="-" &&command!="=")
{
8
s3=s3.concat(command); tf.setText(s3); } if(command=="=") { Double ob1=Double.valueOf(s1); Double ob3=Double.valueOf(s3); d1=ob1.doubleValue(); d3=ob3.doubleValue(); if(s2=="+") d4=d1+d3; if(s2=="-") d4=d1-d3; if(s2=="*") d4=d1*d3; Double ob4=new Double(d4); tf.setText(ob4.toString()); if(s2=="/") { if(d3==0)
4.3 程 序 调 试 与 结 果 示 例
-------------------------------------------8
5
、
个
人
总
结
------------------------------------------------
-----10
6、
附录(代码)
----------------------------------------------
#####学院
JAVA 语言课程设计报告
小程序计算器系统管理
班 级:####### 姓 名:###
## 指导老师:###
时间:2012 年 6 月 25 日至 6 月 29 日
目录
1、课程设计概述
-------------------------------------------------3
1.1 利用 java 编写计算器,使之具备一定的功能:-----------------3 1.2 课程设计的主要思想--------------------------------------------------3 1.3 该项目设计的目的-----------------------------------------------------3
2、需求分析方案
-------------------------------------------------4
2.1 功能需求分析
-----------------------------------------------4
2.2 性能需求分析
-----------------------------------------------4
---5
4、
详细说明、调试
2
---------------------------------------------6
4.1
程
序
流
程
图
------------------------------------------------------
-6
4.2
部
分
代
码
说
明
-----------------------------------------------------6
7
B[0].addActionListener(this); //7 B[1].addActionListener(this); //8 B[2].addActionListener(this); //9 B[3].addActionListener(this); //除号 B[4].addActionListener(this); //4 B[5].addActionListener(this); //5 B[6].addActionListener(this); //*乘号 B[8].addActionListener(this); //1 B[9].addActionListener(this); //2 B[10].addActionListener(this); //3 B[11].addActionListener(this); // -减号 B[12].addActionListener(this); //0 B[13].addActionListener(this); //.小数点 B[14].addActionListener(this); //=等于号 B[15].addActionListener(this); //+加好 b1.addActionListener(this); b2.addActionListener(this); f.addWindowListener(new closeWin(); 运算设计代码: if(command=="清除") //清零键 按下时返回初始状态