基于java的简易计算器设计.doc

上传人:h**** 文档编号:129932 上传时间:2018-07-09 格式:DOC 页数:118 大小:793.50KB
下载 相关 举报
基于java的简易计算器设计.doc_第1页
第1页 / 共118页
基于java的简易计算器设计.doc_第2页
第2页 / 共118页
基于java的简易计算器设计.doc_第3页
第3页 / 共118页
基于java的简易计算器设计.doc_第4页
第4页 / 共118页
基于java的简易计算器设计.doc_第5页
第5页 / 共118页
点击查看更多>>
资源描述

1、 基于 java 的简易计算器的设计 1 基于 java 的简易计算器的设计 摘要 自从 java 语言诞生以来, java 语言就以不可抵挡的趋势很快成为国际上广泛流行的面向对象编程语言,它既具有高级语言的特点,又少了 C 语言中指针特点,因而变得简单了很多。 Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,其具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人 PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下, Java 更具备了显著优势和广阔前景。 本文介绍了用 java 语言编写

2、一个简易计算器。实现数学上的加、减、乘、除、乘方、开方、阶乘、正弦、余弦运算等相关运算。利用这个程序可以方便的进行日常性的小规模运算,小巧简易,是个实用的工具 。 关键词 : 程序设计;简易计算器; java 语言 基于 java 的简易计算器的设计 2 THE DESIGN OF SIMPLE CALCULATOR BASED ON JAVA ABSTRACT Since the inception of the java language, java language Take irresistible trend soon became widespread international

3、popular object-oriented programming language, both with advanced language features, and less of the C language pointer characteristics, and thus becomes a lot simpler . Java is a cross-platform application software can write object-oriented programming language, which has excellent versatility, effi

4、ciency, platform portability, and security, are widely used in personal PC, data center, gaming consoles, scientific super-computers, mobile phones and the Internet, also has the worlds largest developer of professional community. In the global cloud computing and mobile Internet industry environmen

5、t, Java and more have significant advantages and broad prospects. This article describes the use java language a simple calculator. Achieve mathematicaladdition, subtraction, multiplication, division, involution, evolution, factorial, sine, cosine operations and other related operations. With this p

6、rogram you can easily carry out daily operations of small-scale, small simple, is a useful tool. Key words: program design; simple calculator; java language 基于 java 的简易计算器的设计 3 目 录 1 前言 . . . .1 1.1 课程设计背景 . 1 1.2 需求环境 . 1 1.3 课程设计思路 . . 1 2 课程设计概要 . . .2 3 计算器详细设计 . . .3 3.1 计算器界面 . . . .3 3.1.1 CA

7、L 主类的显示分布 . .3 3.1.2 计算器显示界面实现代码 . 3 3.2 监听各个按钮的类 . . .5 3.2.1 编写监听类目的 . .5 3.2.2 监听类实现代码 . . 5 3.3 按键响应类 . . .7 3.3.1 响应类编写的目的 . . .7 3.2.2 响应类实现代码 . . 7 3.3 运算处理类 . . .9 3.3.1 处理方式 . . . .9 3.2.2 处理类实现代码 . . 9 4 运行与调试 . . . 12 4.1 进入程序主界面 . . . 12 4.2 加减乘除功能实现 . . . 12 4.3 正余弦、正切功能实现 . . 13 4.4 阶乘

8、功能实现 . . 13 4.5 乘方、开方功能实现 . . . 14 基于 java 的简易计算器的设计 4 5 实验总结 . .15 参考文献 . .16 附录:源代码 . .17 基于 java 的简易计算器的设计 1 1 前言 1.1 课程设计背景 日常生活中我们经常会遇到一些小型数据计算的问题,本课程设计就是以此为出发点,设计了这样一个简单的计算器,用以实现基本的数学运算。在 java 语言当中通过定义类,类中的各种方法实现对计算器相关功能的实现,并通过与用户自己手动输入并选择运算功能实现计算功能,是一个完全由用户控制 的简易计算器。 在完成课程设计的期间,参阅了相关的书籍并在网络上查

9、找相关的资料,对实现这个设计提供了很大的帮助。由于设计水平和知识方面的匮乏,本次课程设计还存在缺点和不足,望多多包涵。 1.2 需求环境 本课程设计需要的设备为硬件要求和软件配置要求具体要求如下: 硬件要求:一台计算机。 软件配置: WINDOWS 系统、 JDK 1.7、 eclipse 1.3 课程设计思路 做计算器最主要的就是实用性,要简单,便于操作。程序界面是一个窗口的形式展现并由用户自己完全手动控制。并以设计的要求为基 础,在实现课程设计所给的功能以外,要对界面的美观进行了优化,看起来更人性化,由此一个简洁美观的计算器就建立起来了。 基于 java 的简易计算器的设计 2 2 课程设

10、计概要 在设计程序的时候,考虑到计算器的功能,首先编写一个 CAL 类,在该类中按照其功能分别写了一个方法实现,在程序开始后,可以看到一个控制面板形式的计算器界面展现在用户面前,用户自己输入数据和选择要运算的功能进行计算。具体方法有:加减乘除运算、乘方开方运算、正余弦正切运算、删除阶乘运算等 具体的关系结构如表 2-1: CAL 类 加、减、乘、除方法 正余弦、正切方法 删 除、阶乘方法 乘方、开方方法 表 2-1 流程功能实现的流程图详解: 用户按数字键输入数据 加、减、乘、除方法 正余弦、正切方法 删除、阶乘 方法 乘方、开方方法 用户启动 计算器 运算 输出运 算结果 基于 java 的

11、简易计算器的设计 3 3 计算器详细设计 3.1 计算器界面 3.1.1 CAL 主类的显示布局 为了方便用户的使用,创建了一个带按钮的控制面板。将所有的运算键、数字键等都放在该面板中方便用户选择与使用。所有的运算选择都完全由用户掌控。 3.1.2 计算器显示界面实现代码 程序如下: public class cal extends Applet / 定义所有需要使用的全局 变量 String str = “0“;/ 暂存显示屏数据 String sign = “null“;/ 暂存符号数据 double num = 0;/ 暂存内部运算数据 boolean change = false;/

12、暂存内部四则运算起用 GridLayout g0, g1;/ 定义 AWT布局部件 JTextField number; Button num_p, num_0, num_1, num_2, num_3, num_4, num_5, num_6, num_7, num_8, num_9; Button act_add, act_mul, act_div, act_sub; Button mat_sin, mat_cos, mat_tan; Button do_ans, do_del; Button fac, sqr,inv,blank; Panel p0, p1; public void in

13、it()/ 主程序部分 / 定义各个控件的样式 number = new JTextField(20);/ 显示屏 number.setHorizontalAlignment(JTextField.RIGHT); number.setEnabled(false); number.setText(“0“); num_p = new Button(“。 “);/ 小数点的按钮 num_p.setForeground(Color.red); num_p.addActionListener(new getbt(); num_0 = new Button(“0“);/ 数字 0的按钮 num_0.set

14、Foreground(Color.red); num_0.addActionListener(new getbt(); num_1 = new Button(“1“);/ 数字 1的按钮 基于 java 的简易计算器的设计 4 num_1.setForeground(Color.red); num_1.addActionListener(new getbt(); /此处省略了部分代码 num_9 = new Button(“9“);/ 数字 9的按钮 num_9.setForeground(Color.red); num_9.addActionListener(new getbt(); act

15、_add = new Button(“+“);/ 加法的按钮 act_add.setForeground(Color.red); act_add.addActionListener(new getbt(); /此处省略了部分代码 blank = new Button(“blank“);/ blank的按钮 blank.setForeground(Color.red); blank.addActionListener(new getbt(); / 布局整个计算器 g0 = new GridLayout(1, 1, 10, 10);/ 布局输入输出大体位置 g1 = new GridLayout(

16、4, 6, 10, 10); p0 = new Panel(); / 显示屏的布局 p0.setLayout(g0); p0.add(number); p0.setBounds(0, 0, 100, 50); / 按纽的布局 p1 = new Panel(); p1.setLayout(g1); p1.add(num_1);/ 第一排按纽 p1.add(num_2); p1.add(num_3); p1.add(act_add); p1.add(act_sub); p1.add(fac); /此处省略了部分代码 p1.setBounds(5, 60, 400, 250); p1.setBack

17、ground(Color.cyan);/ 设置按钮背景颜色 setLayout(null); add(p0); add(p1); this.setBackground(Color.cyan);/ 设置背景整体颜色 3.2 监听各个按钮的类 基于 java 的简易计算器的设计 5 3.2.1 编写监听类目的 编写监听类的目的主要监听用户所按下的数字键和运算键,为了计算机后续的取得数据并进行运算做预备工作。给后续计算工作提供保障。 3.2.2 监听类实现代码 class getbt implements ActionListener / 监听作出反应的类 public void actionPer

18、formed(ActionEvent e)/ 对每个每个按钮做出响应 if (e.getSource() = num_0) press0(); else if (e.getSource() = num_1) press1(); else if (e.getSource() = num_2) press2(); else if (e.getSource() = num_3) press3(); else if (e.getSource() = num_4) press4(); else if (e.getSource() = num_5) press5(); else if (e.getSour

19、ce() = num_6) press6(); else if (e.getSource() = num_7) press7(); else if (e.getSource() = num_8) press8(); else if (e.getSource() = num_9) press9(); else if (e.getSource() = num_p) pressp(); else if (e.getSource() = act_add) pressadd(); else if (e.getSource() = act_mul) pressmul(); else if (e.getSo

20、urce() = act_div) pressdiv(); else if (e.getSource() = act_sub) presssub(); else if (e.getSource() = mat_sin) presssin(); else if (e.getSource() = mat_tan) presstan(); else if (e.getSource() = mat_cos) 基于 java 的简易计算器的设计 6 presscos(); else if (e.getSource() = do_ans) pressans(); else if (e.getSource(

21、) = do_del) pressdel(); else if (e.getSource() = fac) pressfac(); else if (e.getSource() = sqr) presssqr(); else if (e.getSource() = inv) pressinv(); 3.3 按键响应类 3.3.1 响应类编写的目 的 通过监听类的监听,采集用户所按下的按键信息进行分析,并将分析结果保存为不同的方法和标记,通过不同的标记在运算过程中调用处理类中的不同方法实现计算功能。 3.3.2 响应类实现代码 public void press0()/ 对按 0 作出反应 if (str.length() 16 else if (str = “0“ | sign != “null“) str = “0“; number.setText(str); /此处省略部分代码 public void pressp()/ 对按。作出反应 boolean p = false; for (int i = 0; i str.length(); i+) if (str.charAt(i) = .) p = true; if (str.length() 16 else if (str = “0“ | sign != “null“)

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。