计算器java课程设计
计算器java课程设计--简单计算器
计算器java课程设计一简单计算器
学号: 姓名: 班级: 101210109
好茨4巒戊
《JAVA程序设计》课程设计报告
简单计算器
卫口Tfp
10级计科一班
吕海莲___________
2012-12-25
一、设计内容和要求
1、简单计算器模拟程序的基本要求
模拟Windows中附件里面的计算器软件,能实现整数的加、减、乘、除四则运算。
2、需要实现的主要功能
该计算器模拟程序使用Java的awt包和Swing包的类库设计图形界面的计算器显示用户界面并且使用图形界面中的事件event委托机制来处理事件响应,以及用Java语言设计实现整数的加、减、乘、除四则运算。(附加功能:淸零和异常处理机制)
二、系统分析与概要设计
1、面板
JPanel txtpanel:用于放置文本框
Panel btnpanel:用于放置按钮(0・9 和+,-,*/,=)
2、显示部分
(1)第一个面板:txtpanel
位置以及排列方式BorderLayout.NORTH
txtpanel.add(txtinput):添加文本框到txtpanel 面板中
(2)第二个面板:btnpanel
排列方式:setLayout(gl)
3、基本按钮
btnpanel.add(b5);
btnpanel.add(bl); btnpanel.add( multiply) btnpanel.add(b4) btnpanel.add(b6) btnpanel.add(divide)
btnpaneLadd(bO) .add(bdes) btnpaneLadd(equal); btnpaneLadd(subtract)
java课程设计科学计算器
java课程设计科学计算器
。
一、课程目标
知识目标:
1. 理解Java编程中算术表达式的组成及运算规则;
2. 掌握Java中的基本数据类型及其在算术运算中的使用;
3. 学会使用Java控制结构和函数实现科学计算器的功能;
4. 了解科学计算器中常见的数学函数及其在Java中的实现。
技能目标:
1. 能够编写简单的Java程序,实现加、减、乘、除等基本运算;
2. 能够运用循环和条件语句,实现科学计算器的逻辑功能;
3. 能够利用Java类和对象,设计并实现具有图形用户界面的科学计算器;
4. 能够运用调试技巧,找出并修正程序中的错误。
情感态度价值观目标:
1. 培养学生对编程的兴趣,激发其探究科学计算器原理的欲望;
2. 培养学生严谨、细致的编程习惯,提高其问题解决能力和团队协作能力;
3. 培养学生热爱科学、勇于创新的精神,使其认识到编程在科学计算中的重要性。
本课程针对高年级学生,结合Java编程知识,旨在帮助学生掌握科学计算器的核心功能实现。课程注重实用性,通过设计具体的学习成果,使学生在完成课程后能够独立编写并优化科学计算器程序。同时,关注学生的情感态度价值观
培养,提高其综合素质。
二、教学内容
1. Java基本语法与数据类型:回顾Java基本语法规则,重点掌握整型、浮点型等基本数据类型及其在运算中的使用。
- 教材章节:第一章 Java语言概述,第二章 基本数据类型与运算符
2. 算术表达式与运算规则:讲解算术表达式的构成,介绍运算符优先级和结合性。
- 教材章节:第二章 基本数据类型与运算符
3. Java控制结构:学习顺序、分支和循环结构,实现科学计算器的基本运算功能。
计算器 java程序设计..
目录
1.课程设计目的 (2)
2.设计题目分析 (3)
2.1 题目简介 (3)
2.2 设计要求及需求分析 (3)
3.课程设计内容 (3)
3.1 总体设计 (3)
3.2计算器功能模块设计 (4)
3.3计算器算法流程设计 (5)
3.4类的设计 (6)
3.5代码实现: (6)
3.5 设计结果与分析 (9)
4.设计心得与总结 (10)
参考文献: (11)
附录: (12)
1.课程设计目的
通过课程设计把知识形成系统,把自己所学的知识在实际问题中加以运用。如果自己编写的程序能够给更多的人带来方便,并且得到人们的好评,那么自己编写的程序就可以实现商品化,形成产品给更多的人利用,并实现一定的商品价值。
因此本次课程设计有目的有以下几点:
(1)复习巩固java语言的基础知识,进一步加深对java语言的理解和掌控。
(2)提供一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机结合起来,锻炼我们的分析解决实际问题的能力。提高我们适应实际,实践编程的能力。
(3)培养我们在项目开发中创新意识及能力,通过亲身实践,利用所学编写简单的面向对象程序,提高对面向对象及JAVA语言的理解。
2.设计题目分析
2.1 题目简介
设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算、设计的计算器应用程序可以完成家法、减法、乘法、除法。
2.2 设计要求及需求分析
设计要求:由于现代用户更倾向于由鼠标方便操作的图形用户界面,所以我们采用GUI来实现计算器,并采用Swing组件,AWT事件处理等实现具体功能。
背景需求分析:在我们日常生活中,计算开支、收入时,大额数字或是多倍小数的计算都需要计算器的帮助,而在学习一些科目时,也常常要处理数字。虽然现在的计算器价格比较低廉,但是功能过于简单的不能满足个人需求,功能多的价格较贵,不仅操作不便,很多功能也根本用不到。所以我们想用自己所学设计开发一个属于自己的简单计算器来完成日常学习生活的需求。
java课程设计报告计算器
目录
一、课程设计目的 (2)
二、课程设计任务 (2)
2.1、设计任务 (2)
2.2、课程设计要求: (2)
2.3、需求分析 (2)
三、开发工具与平台 (3)
3.1、开发工具 (3)
3.2、开发平台 (3)
四、设计思路 (4)
4.1、界面设计 (4)
4.2.1、逻辑设计 (4)
4.2.2、程序流程图 (5)
4.2.3、主要代码展示及说明 (5)
4.3、程序测试 (10)
五、实验小结 (11)
六、附录(程序代码) (12)
一、课程设计目的
1、熟练掌握java面向对象编程。
2、选择合适的数据结构实现需求。
3、熟练使用各种控制结构。
4、GUI组件、事件处理技术。
二、课程设计任务
2.1、设计任务
设计一个简易的计算器,可以进行四则运算:加、减、乘、除等(限于十进制下)
程序要求:
(1)应具有相应的界面,可参考Windows操作系统自带的计算器界面。
(2)操作符号定为:“+”,“-”,“*”,“/”,“+/-”等。(按国际惯例设计)(3)用户通过点击程序界面上按钮,实现数字、运算符的输入操作。
(4)以上部分为必须完成的内容。
选作部分:
(1)具有操作符号“1/x”,“sqrt”(开方),“.”(小数功能)等。
2.2、课程设计要求:
(1)应用自己所学课程知识完成对计算器的基本任务。
(2)查阅相关资料,学习和掌握项目中涉及的新知识,提高自学能力。
(3)通过应用java程序编写计算器来提升自己对简单的图形界面有一定的掌握和了解。
2.3、需求分析
1.设计的计算器可以完成加法、减法、乘法、除法的简单运算。
2.实现一些简单的扩展运算,如:正负号、倒数、退格、清零等功能。
课程设计(论文)-基于JAVA的计算器的设计与实现
基于JAVA的计算器的设计与实现
学院(系):软件学院
专业:软件工程
学生:
学号:
班级:
指导教师:
完成日期2016 年10 月
基于JAVA的计算器的设计与实现
[摘要]
该文档是关于对Java版计算器的功能进行描述和介绍,该程序是要个图形界面的简单Java计算器,具有良好的界面使用人员能快捷简单的进行操作。即时准确的获得需要的计算结果,充分降低了数字计算的难度和节约了时间,对人们的生活有一定的帮助。可以进行简单的四则运算(加、减、乘、除等)。界面简单易操作,具体程序实现了:
(1)实现简单的加、减、乘、除、运算。
(2)实现了除了加、减、乘、除按钮外其他按钮功能,如:C 表示清零,del表示删除。
(3)实现了连续运算能力。
关键词:Java语言四则运算计算器
目录
1,绪论 ....................................................................................... 错误!未定义书签。
1.1java版计算器的意义与结构 .......................................... 错误!未定义书签。
1.1.1java版计算器的意义 ............................................ 错误!未定义书签。
1.1.2java版计算器的论文结构 .................................... 错误!未定义书签。2,开发平台简介相关技术简介 .................................................. 错误!未定义书签。
java课程设计-计算器
java课程设计-计算器
华东交大课程设计报告
课程设计(论文)任务书
软件学院学院 09软件+会计专业四班一、课程设计(论文)题目简单计算器二、课程设计(论文)工作自 2010 年 12 月 20 日起至 2010 年 12 月24 日止。三、课程设计(论文) 地点: 软件学院实训中心四、课程设计(论文)内容要求:
1(本课程设计的目的
(1)掌握Java语言的程序设计方法;
(2)理论联系实际,进一步提高学生的软件开发技术;
(3)培养学生分析、解决问题的能力;
(4)提高学生实践论文撰写能力。
2(课程设计的任务及要求
1)课程设计任务:
设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算,以及一些扩展运算,如正负号、倒数、退格、清零等,并通过此次课程设计来检测和提升自己的 java编程能力~
2)创新要求:
图形界面采用继承windowadapter类,采取调用类方法来注册监听~
3)课程设计论文编写要求
(1)课程设计任务及要求
(2)设计思路--工作原理、功能规划
(3)详细设计---数据分析、算法思路、类设计、功能实现(含程序流程图、主要代
码及注释)、界面等。
(4)运行调试与分析讨论---给出运行屏幕截图,分析运行结果,有何改进想法等。 (5)设计体会与小结---设计遇到的问题及解决办法,通过设计学到了哪些新知识,
巩固了哪些知识,有哪些提高。
(6)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)
第 1 页
华东交大课程设计报告
(7)报告按规定排版打印,要求装订平整,否则要求返工;
JAVA课程设计-----简单的计算器
Java课程设计说明书
---Java程序简单的计算器
XXX
X
XXX
目录
正文
1. 概述 (3)
1)项目背景 (3)
2)编写目的 ............................................ 错误!未定义书签。
3)软件定义 (1)
4)开发环境 (1)
5)所用的知识 ........................................ 错误!未定义书签。
2功能说明 (4)
1) 问题陈述 (3)
2) 需要完成的功能 (3)
3程序的类的说明 (4)
4软件系统测试说明 (6)
5用户使用说明 (6)
结束语 (7)
参考文献 (4)
1. 概述
1)项目背景
《JA V A程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。通过一学期的学习和了解我能够通过自己所学的知识进行一次全面的综合训练。
2)编写目的
JA V A程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
更重要的是明白开发软件的意义与模块的分析与制作的过程。
3)软件定义
简单的计算器,可以进行+、-、*、/、辅助功能有清屏、开方可以进行整数的运算同样也可以进行浮点型小数的运算。功能很简单数据处理有一定范围。
4)开发环境
IDE:NetBeans IDE 7.0 (Build 201104080000)
javs课程设计计算器
javs课程设计计算器
一、课程目标
知识目标:
1. 学生能理解计算器程序的基本结构,掌握Java中实现计算器功能的相关语法知识。
2. 学生能运用所学知识,自主编写简单的计算器程序,实现加、减、乘、除四则运算。
3. 学生了解并掌握异常处理的基本方法,提高程序健壮性。
技能目标:
1. 学生掌握使用Java编写控制台应用程序的基本步骤,培养编程实践能力。
2. 学生能够运用条件语句和循环语句实现计算器的逻辑运算。
3. 学生学会使用调试工具,分析并解决程序中出现的错误。
情感态度价值观目标:
1. 学生通过编写计算器程序,体验编程解决问题的乐趣,提高学习Java的兴趣。
2. 学生在合作学习中,培养团队协作能力和沟通能力,形成良好的编程习惯。
3. 学生认识到编程在实际生活中的应用价值,增强对信息技术的认同感。
课程性质:本课程为Java语言程序设计的基础实践课程,旨在帮助学生掌握Java编程的基本知识,培养编程思维和实际操作能力。
学生特点:学生为初中生,具备一定的逻辑思维能力,对计算机编程有一定兴趣,但实践经验不足。
教学要求:注重理论与实践相结合,通过实际操作和案例分析,使学生掌握计算器程序的编写方法,提高编程实践能力。同时,关注学生个体差异,提供个性化指导,确保每位学生都能达到课程目标。在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容
1. 程序设计基础:回顾Java基本语法,重点掌握变量声明、数据类型、运算符、表达式等概念。
相关教材章节:第一章 Java语言概述,第二章 基本数据类型与运算符。2. 控制台输入输出:学习使用Scanner类实现控制台输入,掌握打印输出语句的使用。
java课程设计--计算器(带源码)
}elseif(("-").equals((String)v.lastElement())) {
sum=sum- d;
tf.setText(String.valueOf(sum));
}elseif(("x").equals((String)v.lastElement())) {
|| ("/").equals((String)v2.lastElement())
|| ("=").equals((String)v2.lastElement())) {
tf.setText(String.valueOf(sum));
}elseif(("init").equals((String)v2.lastElement())) {
1.实验设计目的:
(1)掌握类的定义和使用;
(2)掌握对象的定义;
(3)掌握常用类的使用。
2.实验设计内容:
计算器相信对任何人来说,都不会感觉陌生,用Java语言实现一个计算器,该计算器的功能与windows操作系统的附件所带的计算器类似,支持简单的加、减、乘除运算。
3.技术要点:
事件监听器的使用
4.实验条件:
p2.add(b3);
b3.addActionListener(this);
《Java课程设计》说明书
《Java课程设计》说明书
课程设计报告书目录
一、设计课题
二、设计目的
三、操作环境
四、设计场所(机房号、机器号或自己机器)
五、设计过程(设计内容及及各源代码板块)
六、本次设计中用到的课程知识点(列出主要知识点)
七、设计过程中遇到的问题及解决办法
八、设计心得总结
2.总体设计
本程序是为了实现计算器的基本功能的运行。利用监听器去实现计算器的基本功能。
3.科学计算器界面截图:
1)功能描述
1、打开计算器。首先是标准型的计算器,具有基本的加减乘除,开方等
基本功能。同时,在标准型的计算器中还可以存储文本框中的内容。如图1所示:
图1标准型计算器界面
2、在标准型的计算器界面中,进行的运算--加法运算。如计算
2+3=5.0。
如图2
图2加法功能
3、实现减法运算.如计算:4-2=2.0 如图3
图3 减法运算
4、实现取余运算.如计算 12%20=12.0 如图4
图4取余计算
4.程序整体设计说明
【1】程序中所用到的变量
count、line1、line2、leng、input、input1 【2】代码列表:
import java.awt.FlowLayout;
Java语言程序设计实训【计算器】
目录
一、课程设计的目的与要求 (2)
1.1 课程设计目的 (2)
1.2 课程设计要求 (2)
二、题目说明 (2)
2.1 题目说明 (2)
2.2 开发工具介绍 (2)
三、总体设计 (3)
3.1 系统开发平台 (3)
3.2 系统结构图 (3)
四、详细说明 (3)
4.1 计算器主界面 (3)
4.2 系统实施 (4)
五、遇到的问题和解决方法 (9)
六、总结 (10)
七、参考文献 (10)
附录(源程序代码) (11)
八、教师评语 (20)
一、课程设计的目的与要求
1.1 课程设计目的
1) 复习,巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握。
2) 课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实
际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力。
3) 培养学生在项目开发中团队合作精神,创新意识及能力。
1.2 课程设计要求
◆功能要求:该程序显示GUI用户界面,至少能实现整数的加,减,乘,除四则运算.
◆界面要示:用图形界面实现
◆实训条件:计算机房
◆硬件要求:装有Winxp等操作系统的机器
◆软件要求: JDK、JCreator等开发工具
二、题目说明
2.1 题目说明
随着科学技术的不断发展,计算机已经成为我们工作学习和生活中不可缺少的工具。文本编辑器是个人计算机最司空见惯的应用程序了,在学习了Java语言之后,我决定使用Java语言编写一个简单的计算器,可以实现简单的运算功能,满足日常基本的工作学习和娱乐需要。
该程序是一个图形界面的简单的java计算器,使用人员能快捷简单地进行操作。即时准确地获得需要的计算的结果,充分降低了数字计算的难度和节约了时间。可以进行简单的四则运算(加、减、乘、除,以及求倒数,求相反数),以及常用的数学函数(sin,cos,log,1/x,pow,sqrt,%,)和记忆处理功能,有退格,清零, 归零等应用。界面颜色为白色,数字字体颜色为蓝色,函数及其他功能键为红色。该程序支持键盘操作。
java简易计算器设计思路
java简易计算器设计思路
Java简易计算器设计思路
一、引言
计算器是我们日常生活中常用的工具之一,可以帮助我们进行各种简单的数学计算。本文将介绍如何使用Java编程语言设计一个简易的计算器。
二、功能需求
我们的计算器需要具备以下基本功能:
1. 实现加、减、乘、除四则运算;
2. 能够处理小数、整数和负数的运算;
3. 具备清除操作,清零当前计算结果;
4. 能够处理连续计算,即进行多次连续的运算。
三、设计思路
在设计简易计算器时,我们可以考虑以下步骤:
1. 用户界面设计
首先,我们需要设计一个用户界面,让用户能够输入数字和选择运算符号。可以使用Java的Swing或JavaFX进行界面设计。
2. 输入数字和运算符
在用户界面中,我们可以使用文本框和按钮来实现数字的输入和
运算符的选择。用户在文本框中输入数字,然后点击相应的按钮选择
运算符号。
3. 运算处理
根据用户的选择,我们可以利用Java中的if或switch语句来进
行相应的运算处理。比如用户选择加法运算,则获取用户输入的两个
数字并相加。同样,对于减法、乘法和除法运算,我们也可以使用相
应的语句进行处理。
4. 显示结果
最后,我们需要将计算结果显示在用户界面的文本框中。将处理
后的结果显示在界面上,让用户直观地看到计算结果。
5. 清除操作
我们还可以添加一个清除按钮,使用户能够清除当前的计算结果,重新进行新的计算。
四、扩展功能
除了基本的计算功能外,我们还可以考虑增加以下扩展功能:
1. 添加括号功能,使计算器能够处理复杂的表达式;
2. 添加开平方、取余、求幂等高级运算;
简单计算器课程设计(DOC)
简单计算器课程设计
一. 课程设计的目的
Java语言是此刻流行的网络编程语言,它拥有面向对象、跨平台、散布
应用等特色。面向对象的开发方法是此刻世界最流行的开发方法,它不单具
有更切近自然的语义,并且有益于软件的保护和继承。
为了进一步稳固讲堂上所学到的知识,深刻掌握Java语言的重要观点及其面向对象的特征,锻炼学生娴熟的应用面向对象的思想和设计方法解决实
际问题的能力,开设了Java 程序设计课程设计。
经过此次课程设计,稳固所学Java 语言基本知识,增进Java 语言编写基本功,掌握 JDK、Editplus、Eclipse、JCreator等开发工具的运用,拓宽常用类库的应用。使学生经过该教课环节与手段,把所学课程及有关知识加
以举一反三,全面掌握 Java 语言的编程思想及面向对象程序设计的方法,为此后从事实质工作打下坚固的基础。
二. 设计方案论证
1.开发环境:
JAVA编程工具 JDK 1.5.0 ,操作系统WindowsXP.
2.功能描绘 :
本计算器能够进行简单的四则运算(加、减、乘、除)但仅限于十进
制下,还能够进行(八进制, 十进制, 十六进制)之间的互相变换, 八进制最多能够输入19 位数, 十进制最多能够输入18 位数,十六进制最多能够输入14 位数,backspace 表示退格,clear 表示初始化,在window 下直接运转(Jsp2003.bat )即可,界面为灰白对称。
3.纲要设计 :
**********************************************************
JAVA课程设计——简单计算器
JAVA 课程设计
简单计算器设计
系别
专业
班级学号
姓名
“Java 论文”
目录
✧课程设计题目…………………………………… P3 ✧课程设计简介…………………………………… P3 ✧课程设计源代码…………………………………… P3 ✧课程设计运行举例…………………………………… P9 ✧课程设计心得体会…………………………………… P11
“Java 论文”
课程设计题目:简单计算器设计
课程设计程序简介:能够进行最基本的加、减、乘、除运算,是运用三个面板的叠加做出的界面。通过按钮来进行简易计算器的各种运算,并正确实现运算功能。如果输入错误会,程序会自动提示你的输入错误。整个程序对话框可实现最小化,最大化,关闭。
课程设计源代码::
import javax.swing.*;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
public class counter extends JFrame implements ActionListener
{
JPanel txtpanel,btnpanel,southpanel;//定义三个面板
JTextField txtinput;//定义文本框
JButton
b1,b2,b3,b4,b5,b6,b7,b8,b9,b0,bdes,multiply,divide,add,subtract,clear btn,equalbtn;//aboutbtn;
GridLayout gl;//创建布局
double simpan,hasil;
Java计算器 课程设计任务书
课程设计任务书
课程名称:计算机技术综合课程设计
题目:Java 计算器
学院:信息工程系:计算机科学与技术
专业班级:计算机科学与技术卓越111班
学号:
学生姓名:
起讫日期:2014年6月10日至2014年6月25日
指导教师:管春职称:副教授
学院审核(签名):
审核日期:2014年6月25日
说明
1.课程设计任务书由指导教师填写,并经专业学科组审定,下达到
学生。
2.学生根据指导教师下达的任务书独立完成课程设计。
3.本任务书在课程设计完成后,与论文一起交指导教师,作为论文
评阅和课程设计答辩的主要档案资料。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一、课设任务及要求 (1)
二、需求分析 (2)
三、设计思路 (3)
四、详细设计 (4)
五、运行调试与分析讨论 (14)
六、设计体会与小结 (18)
七、参考文献 (19)
一、课设任务及要求
1)课设任务:
⑴、设计的计算器应用程序可以完成加法、减法、乘法、除法以及取余运算(可以进行浮点数和负数的运算);
⑵、有求倒数、退格和清零功能。
2)创新要求:
能进行正切、余弦,以及求平方根、指数(包括对e)、自然对数运算。
3)设计要求
①设计的计算器应用程序可以完成加法、减法、乘法、除法和取余运算。且有小数点、正负号、求倒数、退格和清零功能。
②课程设计可选用Eclipse、JBuilder、NetBeans等作为开发平台以提高开发效率,通过资料查阅和学习尽可能熟练掌握其中一种集成开发环境。
③认真按时完成课程设计报告,课程设计报告内容包括:设计任务与要求、需求分析、设计思路、详细设计、运行调试与分析讨论和设计体会与小结六个部分。
二、需求分析
⑴、开发的技术及功能
本课程设计是要做一个图形界面的计算器,其界面主要是由swing组件中的控件构成。程序实现了计算器的基本功能有:加、减、乘、除基本算术运算(可以进行浮点和负数运算)和sin、cos、tan等三角函数求值运算,同时能进行指数运算和自然对数运算,还有求倒数、退格和清零功能。
⑵设计思路
设计这个计算器主要是参考Windows操作系统中自带的计算器,由于编者水平和时间的限制,不能将计算器设计到科学型及其他更复杂的类型,在设计过程中还参考了一些其他的优秀设计。但本计算器除了常用的加减乘除(可以进行浮点和负数运算)这些基本运算外,还有求余、求倒、退格、清零,甚至还能进行一些复杂科学的运算,比如余弦(cos)、正切(tan)、指数运算(pow)、自然对数运算(log)、求平方根(sqrt)以及对e的指数运算(exp),并且还能进行连续运算。总体上说来,本计算器设计简单,代码很少,程序很小,但功能却很强大,这是同类计算器所不具备的。
⑶设计效果图
设计时先在设计界面中添加按钮等控件,后在按钮的actionPerformed 事件中添加代码完成其功能其中调用了Java类中的Math函数库以及各种字符串操作。设计的界面如下:
图1 计算器运行界面
⑴、本应用程序继承自框架类(JFrame),容器Container c采用BorderLayout 边缘布局,将单行文本框加入到“North”区域,包含各种按钮的面板JPanel p加入到”Center”区域。包含各种按钮的面板JPanel p 采用3行6列的网格布局,然后将数字按钮和运算符按钮以及控制按钮用一个for循环添加到面板中同时注册按钮事件监听器。如:
Button b=new Button();
b.addActionListener(事件监听器);
⑵、事件监听器中的事件处理方法void actionPerformed(ActionEvent evt)完成主要的按钮事件的处理。事件处理分以下几种情况:数字按钮事件(”0”,”1”,”2”…”8”,”9”)、运算符按钮事件(”+”,”-“,”*”,”/”,”%”)、正负号按钮事件(”+/-“)、小数点按钮事件(”.”)、等号按钮事件(”=”)、求倒按钮事件(”求倒”)、退格按钮事件(”退格”)、清除按钮事件(“C”) 、正切(tan)、余弦(cos),以及求平方根(sqrt)、指数(pow)、对e的指数(exp)、对数运算(log)。
⑶、在事件处理,触发按钮事件时,先判断是或是数字是或是“-/+”是或是“.”,是的话就将负号“-”、数字、小数点“.”分别写入文本框并存放在sum中,然后判断是或是“退格”、“求倒”等,是的话进行相应的处理,都不是的话则跳到doOperation()执行运算同时将运算符存放在preOperater 中。触发按钮事件时,要进一步分析,是重新开始计算时触发的按钮事件还是计算中间触发的按钮事件。
⑷、计算器完成的是一个数学表达式,如:3+2,所以可以采用一个数组来存储数字或字符,如3,+,2分别存储在数组中,最后运算时,可以一一取出来进行运算。
⑸、利用按钮设计计算器的各个运算符和操作符,通过按钮的事件处理实现按钮计算功能。
⑹、利用文本框显示操作数和运算结果。
⑴、功能实现:
①加减乘除求余以及指数运算
void doOperation(){
double m=Double.parseDouble(x.getText());
if(preOperater.equals("")) sum=m; //无前一操作,结果为刚输入数
//将结果与文本框中的数据按照前一个运算符运算
if(preOperater.equals("+")) sum=sum+m; //加法运算
if(preOperater.equals("-")) sum=sum-m; //减法运算
if(preOperater.equals("*")) sum=sum*m; //乘法运算
if(preOperater.equals("/")) sum=sum/m; //除法运算
if(preOperater.equals("%")) sum=sum%m; //求余
if(preOperater.equals("pow")) sum=Math.pow(sum, m); //求幂,指数运算}
②其他运算
Ⅰ、求平方根
V oid sqrt(){
double m=Double.parseDouble(x.getText());
if (m<0)
x.setText("负数不能开根号");
else
x.setText(""+Math.sqrt(m));
}
Ⅱ、对数运算
V oid log(){
double m=Double.parseDouble(x.getText());
if (m<0)
x.setText("负数不能进行自然对数运算");
else
x.setText(""+Math.log(m));
}