JAVA课程设计 计算器小程序报告

合集下载

java简易计算器实训报告(一)

java简易计算器实训报告(一)

java简易计算器实训报告(一)Java简易计算器实训报告实训目的通过编写一个简易的Java计算器,深入了解Java基础语法,并掌握对象的属性和行为。

实训过程本次实训采用Eclipse编写Java程序,具体过程如下:1.首先创建一个名为“Calaulator”的Java项目,再在其中创建一个名为“Calaulator”的类。

2.在Calaulator类中定义一个名为“calculate”的方法,此方法接收3个参数:一个char类型的操作符,两个double类型的操作数,返回值为double类型。

3.在方法体中根据传入的操作符进行相应的加、减、乘、除运算。

4.创建一个主函数,在其中调用calculate方法并输出结果。

实训收获通过本次实训,我掌握了Java的基础语法,并深入了解了对象的属性和行为。

同时,我还学会了如何使用Eclipse编写Java程序,提高了自己的编程水平。

实训总结Java语言作为一种强大而稳定的编程语言,具有广泛的应用场景。

通过本次实训,我深刻认识到Java的重要性,并希望能够在以后的学习中不断探索Java语言的更多使用方法。

实训反思在实训过程中,我发现自己对Java的基础语法了解不够深入,导致编写代码时遇到一些困难,需要不断查阅相关资料。

同时,在调试代码时也遇到了许多问题,发现自己对IDE的使用不够熟练,需要更多的实践和学习。

实训展望通过本次实训,我已经初步掌握了Java的基础语法和编程思想,但我认为这只是一个开始。

我需要不断地练习,深入了解Java的各种特性,将其应用到实际开发中。

未来,我希望能够成为一名优秀的Java工程师,为社会做出自己的贡献。

结语本次Java简易计算器实训让我收获颇丰,不仅加深了对Java的认识,也增强了自己的编程实践能力。

希望今后能够在Java的学习和实践中不断提高自己,取得更好的成果。

计算器java课程设计报告(完整版)

计算器java课程设计报告(完整版)

《面向对象程序设计》课程设计报告课程设计题目:计算器****:***专业:信息管理与信息系统班级:1424603****:***2016年 5 月25 日一、课设任务及要求1)课设任务:⑴设计的计算器应用程序可以完成加法、减法、乘法、除法以及取余运算(可以进行浮点数和负数的运算)。

⑵有求倒数、退格和清零功能。

2)创新要求:能进行正切、余弦,以及求平方根、指数(包括对e)、自然对数运算。

3)设计要求①设计的计算器应用程序可以完成加法、减法、乘法、除法和取余运算。

且有小数点、正负号、求倒数、退格和清零功能。

②课程设计可选用Eclipse、JBuilder、NetBeans等作为开发平台以提高开发效率,通过资料查阅和学习尽可能熟练掌握其中一种集成开发环境。

③认真按时完成课程设计报告,课程设计报告内容包括:设计任务与要求、需求分析、设计思路、详细设计、运行调试与分析讨论和设计体会与小结六个部分。

二、设计思路⑴本应用程序继承自框架类(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)。

Java课程设计报告计算器

Java课程设计报告计算器

Java课程设计报告-计算器第一部分设计的内容要求1.1 Windows自带计算器版面设计1.2计算器计算功能算法实现第二部分设计思想2.1根据图形用户界面设计方法设计计算器版面。

①容器类(窗口--Window类,面板--Panel类),框架类--Frame,Button类,Label类,TextField类等类的构造方法,菜单(菜单栏、菜单项)的建立于应用。

②事件处理机制:监听器类WinClose(),actionPerformed()。

2.2计算器计算功能实现,即按钮监听器的实现自定义变量:x,y为操作数,op为操作符。

根据单击按钮不同进行不同的操作,详见处理按钮单击事件方法actionPerformed(ActionEvent e)(计算功能算法)流程图。

第三部分详细设计3.2处理按钮单击事件方法actionPerformed(ActionEvent e)(计算器计算功能算法)流程图:第四部分运行效果图4.1运行初始图:4.2 计算功能测试图:-1+23.4 将textp中数据赋给yN Y单击”1”~”9”将单击数字插入到textp中数据后,并将textp中数据赋给y 将textp赋0,并str.stelength(0);结束4.2 数学分组功能测试图:第五部分心得与体会5.1 Java是一门实践性很强的编程语言,每学习到一个新的知识点应当及时动手编写程序,提高动手能力,加深对语言的理解。

5.2 根据Java图形用户界面设计方法设计计算器版面有很多种设计方法,学习过程中应灵活变通,使版面的设计更简单易懂。

5.3 本次设计的计算器还有不足之处,首先还没有实现科学型的计算功能,其次还没有键盘输入功能,因此还应继续努力,更加完善计算器的功能。

第六部分附录6.1计算器计算功能算法(按钮"="):if(e.getSource()==b26) // "="{str.setLength(0);switch(op){case 0 :if(flag==1)textp.setText(String.valueOf(x+y));else{str.setLength(0);str.append(x+y);fun();}break;case 1 :if(flag==1)textp.setText(String.valueOf(x-y)); else{str.setLength(0);str.append(x-y);fun();}break;case 2 :if(flag==1)textp.setText(String.valueOf(x*y)); else{str.setLength(0);str.append(x*y);fun();}break;case 3 :if(y==0){textp.setText("除数不能为零");str.setLength(0);y=0;}else{if(flag==1)textp.setText(String.valueOf(x/y)); else{str.setLength(0);str.append(x/y);fun();}}break;}}6.2 fun()函数(数学分组功能)public void fun(){flag=0;int t=0;StringBuffer temp;String sstr=str.toString();if(sstr.trim().indexOf("-")==1){temp=new StringBuffer(str.substring(1));t=1;}elsetemp=new StringBuffer(str.substring(0));if(sstr.trim().indexOf(".")==-1){int j=temp.length();for(int i=j;i>3;){temp.insert(i-3,",");i=i-3;}if(t==0)textp.setText(temp.toString());elsetextp.setText('-'+temp.toString());}else{int i=sstr.indexOf('.');StringBuffer s1=new StringBuffer(sstr.substring(0,i));StringBuffer s2=new StringBuffer(sstr.substring(i+1));for(int j=s1.length();j>3;){s1.insert(j-3,",");j=j-3;}if(t==0)textp.setText(s1.toString()+'.'+s2.toString());elsetextp.setText('-'+s1.toString()+'.'+s2.toString());}}。

java实验报告计算器

java实验报告计算器

java实验报告计算器Java实验报告:计算器引言:计算器是我们日常生活中常用的工具之一,它能够帮助我们进行各种数学运算,提高计算的效率。

本实验旨在使用Java编程语言设计和实现一个简单的计算器,通过实践来加深对Java语言和面向对象编程的理解。

一、需求分析在设计计算器之前,我们首先需要明确计算器的功能需求。

一个基本的计算器应该包括加、减、乘、除四种基本运算,同时还应该具备清零、取反、百分比等附加功能。

在本实验中,我们将实现这些基本功能,并尝试添加一些额外的功能,如开根号、求平方等。

二、设计思路1. 用户界面设计我们可以使用Java的图形用户界面(GUI)库来设计计算器的界面。

可以使用按钮来表示数字和运算符,使用文本框来显示计算结果。

2. 数据结构设计为了实现计算器的功能,我们需要设计一个合适的数据结构来存储用户输入的数字和运算符。

可以使用栈(Stack)数据结构来实现这个功能。

当用户按下数字按钮时,将数字入栈;当用户按下运算符按钮时,将运算符入栈。

当用户按下等号按钮时,从栈中取出数字和运算符进行计算,并将结果显示在文本框中。

3. 运算逻辑设计计算器的运算逻辑可以使用逆波兰表达式来实现。

逆波兰表达式是一种不需要括号的数学表达式表示方法,通过后缀表达式的形式来表示运算符的优先级。

在计算器中,我们可以使用栈来实现逆波兰表达式的计算。

三、实验步骤1. 创建一个Java项目,并导入GUI库。

2. 设计计算器的用户界面,包括按钮和文本框。

3. 实现按钮的点击事件,根据用户输入的数字和运算符来更新栈的状态。

4. 实现等号按钮的点击事件,从栈中取出数字和运算符进行计算,并将结果显示在文本框中。

5. 实现清零、取反、百分比等附加功能的按钮点击事件。

6. 运行程序,测试计算器的各项功能是否正常。

四、实验结果与分析经过测试,我们的计算器能够正常地进行加、减、乘、除等基本运算,并且附加功能也能正常使用。

通过这个实验,我们不仅学习了Java语言的基本语法和面向对象编程的思想,还加深了对数据结构和逆波兰表达式的理解。

java实验报告——简单计算器的编写五篇范文

java实验报告——简单计算器的编写五篇范文

java实验报告——简单计算器的编写五篇范文第一篇:java实验报告——简单计算器的编写JAVA实验报告——简单计算器的编写班级:学号:姓名:一、实验目的1.掌握java图形用户界面(GUI)的设计原理和程序结构2.能设计复核问题要求的图形用户界面程序3.掌握常用组件的事件接口4.应用awt和swing组件进行应用程序设计二、实验条件1.计算机一台2.java软件开发环境三、实验步骤1、编写代码:mport java.awt.*;import java.awt.event.*;import javax.swing.*;public class JCalculator extends JFrame implements ActionListener {private static final long serialVersionUID =-***457Lprivate class WindowCloser extends WindowAdapter {public void windowClosing(WindowEvent we){System.exit(0);}}int i;private final String[] str = { “7”, “8”, “9”, “/”, “4”, “5”, “6”, “*”, “1”,“2”, “3”, “-”, “.”, “0”, “=”, “+” };JButton[] buttons = new JButton[str.length]; JButton reset = new JButton(“CE”); JTextField display = new JTextField(“0”);public JCalculator(){super(“Calculator”);JPanel panel1 = new JPanel(new GridLayout(4, 4)); for(i = 0;i < str.length;i++){buttons[i] = new JButton(str[i]);panel1.add(buttons[i]);}JPanel panel2 = new JPanel(new BorderLayout()); panel2.add(“Center”, display);panel2.add(“East”, reset);getContentPane().setLayout(new BorderLayout()); getContentPane().add(“North”, panel2); getContentPane().add(“Center”, panel1);for(i = 0;i < str.length;i++)buttons[i].addActionListener(this);reset.addActionListener(this);display.addActionListener(this); addWindowListener(new WindowCloser()); setSize(800, 800);setVisible(true);pack();}public void actionPerformed(ActionEvent e){ Object target = e.getSource();String label = e.getActionCommand();if(target == reset)handleReset();else if(“0123456789.”.indexOf(label)> 0)handleNumber(label);elsehandleOperator(label);}boolean isFirstDigit = true;public void handleNumber(String key){if(isFirstDigit)display.setText(key);else if((key.equals(“.”))&&(display.getText().indexOf(“.”)< 0))display.setText(display.getText()+ “.”);else if(!key.equals(“.”))display.setText(display.getText()+ key);isFirstDigit = false;}public void handleReset(){display.setText(“0”);isFirstDigit = true;operator = “=”;}double number = 0.0;String operator = “=”;public void handleOperator(String key){if(operator.equals(“+”))number += Double.valueOf(display.getText());else if(operator.equals(“-”))number-= Double.valueOf(display.getText());else if(operator.equals(“*”))number *= Double.valueOf(display.getText());else if(operator.equals(“/”))number /= Double.valueOf(display.getText());else if(operator.equals(“=”))number = Double.valueOf(display.getText());display.setText(String.valueOf(number));operator = key;isFirstDigit = true;}public static void main(String[] args){new JCalculator();} }2、运行结果,见截图计算测试:123+456=579结果正确,程序无误。

JAVA课程设计----计算器小程序报告共13页文档

JAVA课程设计----计算器小程序报告共13页文档

#####学院JA V A语言课程设计报告小程序计算器系统管理班级:#######姓名:###指导老师:###时间:2012年6月25日至6月29日目录1、课程设计概述--------------------------------------------------31.1利用java编写计算器,使之具备一定的功能:-----------------31.2 课程设计的主要思想--------------------------------------------------31.3 该项目设计的目的-----------------------------------------------------32、需求分析方案--------------------------------------------------42.1功能需求分析-----------------------------------------------42.2 性能需求分析-----------------------------------------------43、总体设计方案--------------------------------------------------53.1界面设计----------------------------------------------------------------------53.2功能介绍-----------------------------------------------------------------------54、详细说明、调试---------------------------------------------64.1程序流程图-------------------------------------------------------64.2部分代码说明-----------------------------------------------------64.3程序调试与结果示例-------------------------------------------85、个人总结-----------------------------------------------------106、附录(代码)-----------------------------------------------116.1登陆界面代码--------------------------------------------116.2计算器主界面--------------------------------------------126.3 退出界面代码-------------------------------------------151.课程设计概述1.1利用java编写计算器,使之具备一定的功能:(1)使用图形用户界面:一个文本框;0-9数字按钮;加、减、乘、除运算符;“等于”符号;复位按钮;(2)完成整数、实数的四则运算(加、减、乘、除);(3)通过按钮点击实现数据的复位(清零);(4)实数运算中小数位的精度一致。

java课设计算器报告

java课设计算器报告

java课设计算器报告随着计算机的快速发展,计算机科学正在成为21世纪最重要的学科之一。

同时,作为计算机科学的一部分,Java语言也正在发展壮大。

因此,Java的课程也随之增加,如程序设计,软件工程,数据库,机器学习等等。

作为一名Java专业的学生,在学习课程的同时,我也做了一次课程设计,即实现一个Java算法计算器,如加,减,乘,除以及整数,小数,次方,根号等功能。

首先,我们需要完成一些准备工作,即使用Java语言实现功能。

为了实现上述功能,我们按照以下步骤进行:首先,使用if..else 语句来判断输入是操作数还是操作符;其次,使用switch语句来实现操作;最后,使用System.out.print()函数将结果显示在控制台中。

在实现完上述步骤之后,算法计算器功能就完成了,我们可以开始进行测试。

在测试过程中,我们输入各种操作数和操作符,并检查计算器是否能够正确计算出结果,并且检查算法是否能够实现各种功能,如加减乘除等。

我们最终实现了加减乘除,整数,小数,次方,根号等功能,在测试中结果都正确,证明算法可以实现预期的功能。

最后,总结一下这次实现Java算法计算器的过程:首先,我们使用if..else语句和switch语句来实现功能;其次,我们使用System.out.print()函数来显示结果;最后,在测试中结果都正确,证明算法可以实现预期的功能。

本次实验表明,当我们使用编程语言实现算法时,可以正确地实现我们预期的功能。

本次实验也使我对Java语言有了更深的理解,并且也使我对算法的原理有了更深的认识。

综上所述,我们实现的Java算法计算器可以满足本次实验的需要,具有正确的功能,并且在实验过程中,我们也对算法和Java语言都有了更深的了解。

java课设计算器报告

java课设计算器报告

java课设计算器报告
今天,我们取得了一个令人惊叹的成果:利用Java语言实现了简单的计算器,它可以进行多种数学运算。

本报告展示了其原理与实施过程,并讨论了开发过程中涉及到的关键思想与核心技术。

本课设计报告是针对使用Java编写的计算器的一个评估报告,以下是详细内容:
1.项目背景:由于现在计算机发展得很快,计算机语言也是随之发展起来,更多的语言可以实现各种功能,而Java语言作为编程语言被广泛应用,本次课设希望能够利用Java编写一个小型计算器。

2.功能实现:通过Java编写简单计算器,实现输入两个参数,然后进行加减乘除的计算。

3.开发过程:
(1)首先要创建一个Java程序,然后定义两个变量,用于存放输入的参数。

(2)然后为程序添加输入的函数,以获取用户输入的参数。

(3)利用if语句判断用户输入的运算符号,根据不同的运算符号,调用相应的函数进行计算。

(4)将计算结果输出,以及耗时等信息。

4.评估结果:本次使用Java实现了一个小型计算器,实现了加减乘除功能。

整个程序的开发流程非常顺利,而且具有良好的可实施性和可维护性,程序运行流畅,计算结果准确,性能极佳。

java计算器程序设计报告

java计算器程序设计报告

JAVA 课程设计之计算器设计报告含源代码|计算机数据库课程设计| 精品课程网站设计| 课程设计网报告总结心得本计算器可以进行简单的四则运算(加、减、乘、除)但仅限于十进制下,还可以进行(八进制,十进制,十六进制)之间的相互转换,八进制最多可以输入19 位数,十进制最多可以输入18 位数,十六进制最多可以输入14 位数,backspace 表示退格, clear 表示初始化,在window 下直接运行()即可,界面为灰白对称。

题目:计算器目录1.摘要2.概要设计3.详细设计4.测试分析5.参考文献一、摘要本计算器可以进行简单的四则运算(加、减、乘、除)但仅限于十进制下,还可以进行(八进制,十进制,十六进制)之间的相互转换,八进制最多可以输入19 位数,十进制最多可以输入18位数,十六进制最多可以输入14位数‘backspace表示退格,clear 表示初始化,在window 下直接运行()即可,界面为灰白对称。

二、概要设计(1) 自定义类说明***********************************************************类名: This_number_too_big **作用: 自定义的异常类,用来处理计算结果溢出**继承的父类: Exception 类**实现的接口: 没有***********************************************************class This_number_too_big extends Exception{}ength();harAt(0)=='0'&& ().length()==1)Jimportclass This_number_too_big extends Exception{};static Button btequ=new Button("=");static Button btadd=new Button("+"); static Button btsub=new Button("-");static Button btmul=new Button("*"); static Button btdev=new Button("/");static Button btA=new Button("A");static Button btB=new Button("B");static Button btC=new Button("C");static Button btD=new Button("D");static Button btE=new Button("E");static Button btF=new Button("F");static Checkbox ckb8=new Checkbox(" 八进制");static Checkbox ckb10=new Checkbox("static Checkbox ckb16=new Checkbox("static Button btc=new Button("clear"); static Button btt=new Button("backspace"); public int number=0,length=18;.");(new Font("Serief",,18));(14,33,216,40);(lab);CheckboxGroup grp=new CheckboxGroup();(grp);(grp);(grp);(14,75,55,25) ;(69,75,55,25) ;(124,75,65,25) ;(false);(true);(false);(ckb8);(ckb10);(ckb16);(14,140,120,150);(144,140,40,150);(14,100,170,36);(190,100,40,190);(bt7);(bt8);(bt9);(bt4);(bt5);(bt6);(bt1);(bt2);(bt3);(bt0);(btdot);(btequ);(btadd);(btsub);(btmul);(btdev);(btt);(btc);(btA);(btB);十进制 "); 十六进制(btC);(btD);(btE);(btF);(false);(false);(false) ;(false);(false);(false);(pnl1);(pnl2);(pnl3);(pnl4);(false);(null);(240,300 );(" 计算器");(true);(mainFrame);(mainFrame);(mainFrame);ength();}if(length==14) { (goto_10(),16L));(goto10_8()));number=().length();}ength();}if(length==14) { (goto_10(),16L));number=().length();}ength();}if(length==19) { (goto_10(),8L));(goto10_16()));number=().length();}harAt(0);switch (ch){ case 'c': {("0"); number=0; mark='n'; Refresh=false;}break;harAt(0)=='0'&& ().length()==1) break; if(number{number++;()+ch);} else break;} break;case 'A': enter(); break; case 'B': enter(); break; case 'C': enter(); break; case 'D': enter(); break; case 'E': enter(); break; case 'F': enter(); break;case '.': {if(Refresh==true) {("0"); number=0; Refresh=false;} if().indexOf('.')== -1){number++;()+ch);} else break;}break;case 'b': {if(number==0) break;else{if(--number==0) {("0"); number=0;}else{if (number!=1) ().substring(0,number));else ().charAt(0)));} } }break;case '+': try{ js();} catch(This_number_too_big e) {("0"); number=0; mark='n';Refresh=false; "The number is too big");} break; != -1));lg=(str);!= -1)); lg=(str);while (lg>=j) { ch=lg%j; st=(ch)+st; lg=lg/j;} st=(lg)+st; return st;}harAt(0)=='0'&& ().length()==1) ength();ength();}//end answer() method //}//end class Jsp2003 4.测试分析(1)程序运行情况: 程序正常的响应按钮事件,输入的数值长度受变量length 的限定,进行混合四则运算的时候,结果如果不是很大,可以正常显示,但如果结果很大,就可能采用科学记数方式,这样带来了进制转换时的麻烦,需要特殊的处理科学记数里的 E ,当结果太大的时候,有可能超出可能表示的最大值, (结果溢出) ,这个时候就要对结果进行必要的异常处理,我在输出结果的方法内设置if 语句,如果结果大于某一个值就抛出一个This_number_too_big 类型的类,再使用try-catch ,捕捉输出结果的方法抛出的异常对象。

用JAVA编写的计算器程序的设计报告

用JAVA编写的计算器程序的设计报告

目录目 录 (1)1 需求分析 . (1)1.1 计算器的基本功能: 1.1.1 加法运算: 用数字按钮和“ +” 1.1.2 减法运算: 用数字按钮和“ - ”1.1.3 乘法运算: 用数字按钮和“ *” 1.1.4 除法运算: 用数字按钮和“ / ”按钮进行运算; ........... 1 按钮进行运算; ........... 1 按钮进行运算; .. (1)按钮进行运算; ........... 11.2退格键和清零键:用” Backspace ”和” C'按钮实现; .................1.3 计算器的科学计算方法:1.3.1 开方:用数字按钮和“ Sqrt ”按钮进行运算; .......................... 1 1.3.2 百分比:用数字按钮和“ %”按钮进行运算; ........................... 1 1.3.3求倒数:用数字按钮和“ 1/x ”按钮进行运算; (1)2 设计 .......................................2.1 用户界面设计 ...................................2.1.1 该计算器程序的设计:用户界面包括 Swing 组件,不过程序中大都使用的是 AWT 组件.import java.awt.*; (2)2.1.2 在 AWT 组件, ........................................................ 2 2.1.3这个界面设计中包含了两个接口, 单击事件监听器接 ActionListener口和键盘事件监听器接口 (KeyListener). (4)2.1.4程序设计中 , 使用了布局管理 : (4)2.2 概要设计 (4)2.2.1 Calculator 类中的类名是 Calculator. 它的功能是使用图形用户来实现 计算器的界面设计和运算功能以及一些科学运算方法2.2.2 main 主类.中调用了 cal.display来实现计算器的功能3 实现4 测试4.6 用” Backspace ”实现退格功能 : (20)4.7求倒数 :1/4=0.25 (20)4 164.1实现加法运算: 4+12=16 .... 4.2 实现减法运算:22-11=11 .. 4.3 实现乘法运算: 3*9=27 ....17 17 18 64/32=2 ...............................18 4.5 用” C'实现清零功能: (19)4.4实现除法运算1需求分析(该部分主要阐述所要实现的程序具体具有什么样的功能,要细化,可以用图表作为辅助描述手段)该计算器程序除了具备加减乘除基本功能外,还有清零键C和退格键Backspace,和一些部分的科学计算方法,包括开方、求倒、百分比,程序里面也写了键盘事件监听器接口,不过由于时间仓促,还没能设计出来,所以该计算器不能实现此功能。

java课设计算器报告

java课设计算器报告

java课设计算器报告Java是一种跨平台的面向对象的编程语言,使用Java编写的程序可以运行在各种环境(如Windows,Linux, Mac OS)之中。

而在学习Java语言的过程中,设计一个功能比较完善的计算器是学习者比较需要掌握的一项基本技能,故本文的目的在于,设计一个更加完善的Java课设计算器,并介绍如何实现。

二、计算器简介计算器是一种用于计算数字表达式的设备或程序,它可以计算算术表达式(包括加、减、乘、除),可以处理复杂的表达式,并有多种式样,如科学计算器,财务计算器,历史计算器等等。

三、计算器实现(一)编写程序首先,编写一个简单的计算器程序,让它能够实现输入输出的功能。

程序的实现使用Java的swing组件,并设置相应的按钮和文本框。

(二)处理表达式计算器可以接受复杂的表达式,所以必须使用相应的算法来处理表达式,以便得到正确的结果。

(三)计算结果接收到表达式后,依据编写的算法,计算得到所需要的结果,并在结果框中显示出来。

四、计算器应用计算器是日常生活中非常常见且实用的工具,它有助于改善计算准确性以及节约计算时间。

此外,计算器也有多种应用,比如:(一)金融领域计算器可以帮助金融行业的职员进行计算,例如计算投资收益、贷款利息、汇率等;(二)学术领域计算器可以帮助学生进行科学计算,从而更加方便快捷地完成学术研究;(三)数据分析计算器可以帮助对大量数据进行快速分析,从而节省时间和精力,提高工作效率。

五、总结本文基于Java语言设计了一款更加完善的计算器,并介绍了如何实现,它既可以进行简单的计算,也可以处理复杂的表达式,具有很强的实用性。

在实际的应用中,计算器的功能可以帮助我们更快更准确地完成计算,且多种应用,可以更好地提高工作效率。

java程序设计报告---设计一个计算器

java程序设计报告---设计一个计算器

课程设计课程设计目的设计一个基于Swing的计算器应用程序,完成普通的算术运算。

课程设计要求1.设计的计算器是基于Swing的,可以完成加减乘除和取余运算。

2.增加计算器的日期计算功能,能够计算两个日期之间相距的天数。

(要判断键入的日期格式是否正确,并能正确处理按钮动作事件,同时能够得到正确的计算结果)设计要点主要练习使用布局管理器设计一个计算器的界面,并使用事件监听器处理数据的输入,完成相关的计算。

在面板上可以增加一个算术/日期的转换按钮来选择是普通计算还是日期计算。

以及增加一个清零的按钮CE,用以将显示结果的单行文本域清空,同时将各个参数设置为默认值。

二、总体方案设计日常生活中经常需要用到计算器,比如科学计算,数值计算,会计业务等等,在Applet 中实现一个精巧的计算器,可以让用户的操作也更方便和快捷。

本项目需要实现一个具有四则运算的计算器,能够实现基本的加、减、乘、除运算,以及其它的辅助功能;界面简洁适用;要提供主要的设计思路、类的设计,本次设计添加转进制等功能。

本应用程序继承自框架(frame),此程序使用frame布局管理器bordelayout,将单行文本加入相应区域,包含各种按纽的面板buttonpanel加入相应区域还可以将进制转换的面板与单行文本框放一块包含各种按纽的面板buttonpanel采用N行N列的网格布局,然后将数字按钮和运算符按钮以及控制按钮添加到面板中,同时注册按钮事件监听器。

布局设计好后再添加按钮事件。

对于此程序要考虑到点击加、减、乘、除按钮时是否有点击数字按钮,如果是第一次点击数字按钮或者是点击数字按钮前点击了加、减、乘、除按钮则直接把数字按钮的数值设置到文本框中,否则则应把文本框中的内容加上你所点击按钮的数值设置到文本框中。

四、程序的调试与运行结果说明程序功能实现:使用swing组件和awt图形用户界面以及BroadLayout布局管理器。

通过在按钮的单击事件处理方法中调用类的成员方法calculator()来进行简易计算器的各种运算,并正确实现运算功能。

Java计算器课程设计报告

Java计算器课程设计报告

石家庄职业技术学院课程设计报告计算器应用程序学生姓名:指导教师:系别:专业:年级:论文提交时间:年月日目录一概述 (3)二总体方案设计 (4)三详细设计 (5)四程序的调试与运行结果说明 (7)五课程设计总结 (9)六附录 (10)一概述1.程序具备的功能:(1)使用图形用户界面:一个文本框;0-9数字按钮;加、减、乘、除运算符;“等于”符号;复位按钮;(2)完成整数、实数的四则运算(加、减、乘、除);(3)通过按钮点击实现数据的复位(清零);(4)实数运算中小数位的精度一致。

2.课程设计的主要设计思想对于此计算器程序,首先要设计其GUI界面,总体界面有一个文本框,18个按钮,总体界面用BorderLayout布局。

文本框放置在最NORTH,然后0到9以及+,-,*,/的按钮放置到一个面板Panel中,添加到整体布局的CENTER,界面设计完成。

布局设计好后再添加按钮事件。

对于此程序要考虑到点击加、减、乘、除按钮时是否有点击数字按钮,如果是第一次点击数字按钮或者是点击数字按钮前点击了加、减、乘、除按钮则直接把数字按钮的数值设置到文本框中,否则则应把文本框中的内容加上你所点击按钮的数值设置到文本框中。

在进行加、减、乘、除计算时要把点击加、减、乘、除按钮之前的数值保存下来,运算时是这个被保存下来的数值和文本框中的数值加、减、乘、除。

二总体方案设计1.界面设计界面设计要求用GUI,界面设计中有用到swing组件的TextField和Button,用到awt中的BorderLayout和GridLayout布局管理方式,其图形界面如下:2.功能介绍这是计算器中的一种:简单计算器,本项目用到了Java中的GUI界面和swing 组件以及awt布局,所以简单易用,它能完成如下的几个小功能:点击按钮中的数字键和运算符键就能进行简单的加、乘、乘、除求模四则运算;还能通过用户自己在文本框中输入数字,进行简单运算;如果输入有误时可以按Clear撤销后重新输入新数据三详细设计程序流程图如下:部分代码展示及说明:这段代码主要是对程序的主框架进行相应的设置。

Java简单计算器(程序设计报告)

Java简单计算器(程序设计报告)

JA V A课程设计报告哈尔滨哈商业大学JAVA课程设计课程名称:Java程序设计课题名称:简单计算器*名:***学号:************班级:08级软件工程教育2011年10月20日一、实验目的:使用Eclipse软件制作简单计算器,实现加减乘除等基本功能。

二、实验源码:import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Calculator {public static void main(String[] args) {EventQueue.invokeLater(new Runnable(){public void run(){CalculatorFrame frame = new CalculatorFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}});}}class CalculatorFrame extends JFrame{public CalculatorFrame(){setTitle("Calculator");CalculatorPanal panel = new CalculatorPanal();add(panel);pack();}}class CalculatorPanal extends JPanel{public CalculatorPanal(){setLayout(new BorderLayout());result =0;lastCommand = "=";start = true;display = new JButton("0");display.setEnabled(false);add(display,BorderLayout.NORTH);ActionListener insert= new InsertAction();ActionListener command=new CommantAction();panel = new JPanel();panel.setLayout(new GridLayout(4,4));addButton("7",insert);addButton("8",insert);addButton("9",insert);addButton("/",command);addButton("4",insert);addButton("5",insert);addButton("6",insert);addButton("*",command);addButton("1",insert);addButton("2",insert);addButton("3",insert);addButton("-",command);addButton("0",insert);addButton(".",insert);addButton("=",command);addButton("+",command);add(panel,BorderLayout.CENTER);}private void addButton(String label,ActionListener listener) {JButton button = new JButton(label);button.addActionListener(listener);panel.add(button);}private class InsertAction implements ActionListener{public void actionPerformed(ActionEvent event){String input = event.getActionCommand();if(start){display.setText("");start= false;}display.setText(display.getText()+input);}}private class CommantAction implements ActionListener{public void actionPerformed(ActionEvent event){String command = event.getActionCommand();if(start){if(command.equals("-")){display.setText(command);start= false;}else lastCommand = command;}else{calculate(Double.parseDouble(display.getText()));lastCommand =command;start =true;}}}public void calculate(double x){if(lastCommand.equals("+")) result +=x;else if(lastCommand.equals("-")) result -=x;else if(lastCommand.equals("*")) result *=x;else if(lastCommand.equals("/")) result /=x;else if(lastCommand.equals("=")) result =x;display.setText(""+result);}private JButton display;private JPanel panel;private double result;private String lastCommand;private boolean start;}三、实验结果:。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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=="清除") //清零键 按下时返回初始状态
相关文档
最新文档