一:题目简介

我们要做的是一个多功能计算器,Java程序编辑器是:图形界面、线程、流与文件等技术的综合应用。 图形界面的实现:考虑到简单、实用、高效等特点,就选择了Swing来完成实现,在选择组件上,文本编辑区就选用了jTextField作为主要输入输出部件、数字则是选用了Swing Components内的JButton按钮、简易菜单主要是选用了Swing Menus里面的JMenu控件、菜单内所包含的选项是选用Swing Menus内的JMenuItem和jRadioButtonMenuItem两个控件。 工作原理:本程序只能在应用编译软件编译后才能使用,在运行后方能看到其显示的结果,在使用时有相应的编辑、查看、帮助等等,在运算的时候选择需要的按钮来实现说需要的功能,工作的时候你只要点击界面上的按钮,此时程序中执行相应的事件响应处理,根据各个模块所用的算法来实现并控制计算机硬件的工作。

二:结对分工及过程

结对人:张义莲与李凤娇(4087)(博客地址:http://www.cnblogs.com/lifengjiao/)

我主要负责构件。

(1)加法    两个数据进行加操作,可以为小数。

(2)减法    两个数据进行减操作,可以为负数相减。

(3)乘法    两个数相乘操作。

(4)除法    两个数相除操作。

(5)开平方  对任意一个数进行开方运算,可以是小数。

(6)求余    对任意一个数进行求余运算。

(7)倒数    对任意一个数进行倒数运算。

(8)转换    将十进制数转换为二进制以及将二进制转换为十进制。

李凤娇负责设计计算器的结构框架。

结果如下:

三:代码地址

https://github.com/zhangxinn/test/blob/master/Calculator

四.测试情况

将代码写好之后检查代码的正确性,检查代码无误后将代码进行调试和运行将会出现一个JavaApplet计算器界面。在调试过程中可能会出现有界面但是不能运行小程序,那是因为没有初始化小程序,那时我们应该在主函数中将小程序进行初始化,这样小程序才能运行!  在调试和运行完全正确后,我们就可以按照自己的医院将小程序进行简单测试,例如输入一些简单数据分别运行各个按钮结果正确后可以初步确定程序师正确的。有时候我们还要输入不同范围的值进行测试,可能会发现更多的错误,因为有时候我们定义数据的范围可能会过小或输入数据会越界,到时我们就可以改正以适应更多更大的运算。  有时候我们会不自觉的选择一种最优函数方法尽量将自己的代码简单规范而又不缺少题目所要求的功能,那就要求我们翻阅很多参考书和查阅很多资料。其实javaApplet图形界面的布局也是我们要讨论的范围,如何使得界面更加美观是我们要探讨的!

测试结果如下图:主界面

情况一:倒数

情况二:平方

情况三:二进制转为十进制

情况四:十进制转二进制

五 问题及心得

在这次结对编程中,遇到了很多困难,也让我知道了很多专业知识,对编程中的自顶向下.逐步求精的算法有了更深入的理解,我学习的专业知识更加扎实了。开始的时候在没有列出算法就草草动手,结果发现写的程序代码没有一点章法,后来通过看了课本中的一些典型例题,然后慢慢修改,才使得程序勉强符合要求。从这次课程设计中我发现了许多问题,也是我获得不少宝贵的经验。和队员的分工明确也让我受益匪浅。

Java计算器(结对)的更多相关文章

  1. 结对项目3-功能增强型带基本函数计算java计算器

    -----------------------------------------------------实验报告------------------------------------------- ...

  2. java计算器项目

    简单的java计算器项目   题目:java计算器项目 一. 题目简介: 一个能进行加减乘除四则运算的小程序 Github链接:https://github.com/lizhenbin/test/tr ...

  3. java 计算器SWT/RAP(版本3)键盘鼠标兼容

    java 计算器SWT/RAP(版本3)键盘鼠标兼容,之前版本也对,但存在线程失效问题,当多人访问时,就容易线程失效,一直犯得一个错误就是一直用static变量和static方法, 之前加了什么js界 ...

  4. Java计算器的图形界面应用程序

      JAVA计算器的图形界面应用程序 题目简介: 整体分析: 实验代码: /*部分使用插件做界面*/ import java.awt.EventQueue; import javax.swing.JB ...

  5. Java计算器的简易实现(+-*/)

    java计算器的简易实现(+-*/) import java.util.Scanner; /* 写一个计算器 实现加减乘除四个功能 并且能够用循环接收新的数据,通过用户交互实现 写四个方法 + - * ...

  6. java设计之简单的JAVA计算器

    做这个东西主要是为了练习一下以前学习过的java Swing,所以那些复杂的算法就没有加载到里面去........ 先展示一下效果....,额,当然不是这个样子....   ---> 代码: p ...

  7. java计算器

       由于自己的实验报告 需要用Java来写一个实验报告.自己本没有怎么学过Java,但是学的话也就认真的学一下,毕竟技术这条路线是技多不压身.于是在网站上找来了一些资料,关于Java到底是干什么的, ...

  8. java计算器 图形用户界面 精简版

    package com.rgy.entity; import java.awt.*; import java.awt.event.*; @SuppressWarnings("serial&q ...

  9. Java计算器1.0版

    此版本只是设计了页面,还没有实现事件监听   代码: package com.niit.javagui; import java.awt.Button; import java.awt.FlowLay ...

随机推荐

  1. UVA10562-Undraw the Trees(递归)

    Problem UVA10562-Undraw the Trees Accept: 1199  Submit: 8397 Time Limit: 3000 mSec Problem Descripti ...

  2. Tribonacci UVA - 12470 (简单的斐波拉契数列)(矩阵快速幂)

    题意:a1=0;a2=1;a3=2; a(n)=a(n-1)+a(n-2)+a(n-3);  求a(n) 思路:矩阵快速幂 #include<cstdio> #include<cst ...

  3. 浅谈js之闭包

    1.什么是闭包??? "官方"的解释是指一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分: 红皮书是这样说的,闭包是指有权访问另一 ...

  4. Mysql优化_慢查询开启说明及Mysql慢查询分析工具mysqldumpslow用法讲解

    Mysql优化_慢查询开启说明及Mysql慢查询分析工具mysqldumpslow用法讲解   Mysql慢查询开启 Mysql的查询讯日志是Mysql提供的一种日志记录,它用来记录在Mysql中响应 ...

  5. mybatis基础系列(二)——基础语法、别名、输入映射、输出映射

    增删改查 mapper根节点及其子节点 mybatis框架需要读取映射文件创建会话工厂,映射文件是以<mapper>作为根节点,在根节点中支持9个元素,分别为insert.update.d ...

  6. leetcode 338. Counting Bits,剑指offer二进制中1的个数

    leetcode是求当前所有数的二进制中1的个数,剑指offer上是求某一个数二进制中1的个数 https://www.cnblogs.com/grandyang/p/5294255.html 第三种 ...

  7. Qt warning: 构建目录必须和源文件目录为同级目录

    从一台电脑转移项目到另一电脑, 路径发生变化,重新构建运行时会出现“QT 构建目录必须和源目录为同级目录”提示,解决办法很加单.如下: 方法一: 点击 project(项目)->然后,看看Bui ...

  8. PAT A1102 Invert a Binary Tree (25 分)——静态树,层序遍历,先序遍历,后序遍历

    The following is from Max Howell @twitter: Google: 90% of our engineers use the software you wrote ( ...

  9. postfix 邮件服务的安装及详解

    该实验系统:cetnos 6.5 sendmail:性能好,设置复杂,适合老手 qmail:体积小260+k ,模块化.需要做二次开发,适合对邮件性能有要求的 postfix:前身是sendmail, ...

  10. java算法----排序----(6)希尔排序(最小增量排序)

    package log; public class Test4 { /** * java算法---希尔排序(最小增量排序) * * @param args */ public static void ...