package 四则运算;

import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.Timer; import java.awt.BorderLayout;
import java.awt.Color; import javax.swing.JPanel; import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.GridLayout; import javax.swing.JTextField;
import javax.swing.JLabel; public class jiemian extends JFrame implements ActionListener{
/**
*
*/
private static final long serialVersionUID = -2158244201317433166L;
JTextField textField;
JTextField textField_1;
JTextField textField_2;
JTextField textField_3;
JTextField textField_4;
JTextField textField_5;
JTextField textField_6;
JTextField textField_7;
JTextField textField_8;
JTextField textField_9;
JTextField textField_10;
JTextField textField_11;
JTextField textField_12;
JTextField t1;
int a=0;
JButton b1;
JButton b2;
JButton button;
int[]daan=new int[10];
private Timer tmr;
JPanel []P = {new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
new JPanel(),
};
JTextField []T={new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(20),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10),
new JTextField(10)};
public jiemian() {
JPanel panel = new JPanel();
getContentPane().add(panel, BorderLayout.NORTH);
b1 = new JButton("\u5F00\u59CB");
b1.addActionListener(this);
panel.setLayout(new GridLayout(0, 3, 0, 0));
panel.add(b1); b2 = new JButton("\u4EA4\u5377");
b2.addActionListener(this);
panel.add(b2); button = new JButton("\u6362\u80A4");
button.addActionListener(this);
panel.add(button); JPanel panel_1 = new JPanel();
getContentPane().add(panel_1, BorderLayout.SOUTH);
panel_1.setLayout(new GridLayout(0, 2, 0, 0)); panel_1.add(P[20]); JLabel label = new JLabel("\u7B54\u5BF9\u4E2A\u6570");
P[20].add(label); textField_11 = new JTextField();
P[20].add(textField_11);
textField_11.setColumns(10); panel_1.add(P[21]); JLabel label_1 = new JLabel("\u7B54\u9519\u4E2A\u6570");
P[21].add(label_1); textField_10 = new JTextField();
P[21].add(textField_10);
textField_10.setColumns(10); panel_1.add(P[22]); JLabel label_2 = new JLabel("\u603B\u5206");
P[22].add(label_2); textField_12 = new JTextField();
P[22].add(textField_12);
textField_12.setColumns(10); panel_1.add(P[23]); JLabel label_3 = new JLabel("\u7528\u65F6");
P[23].add(label_3); t1 = new JTextField("0");
P[23].add(t1);
t1.setColumns(10); JPanel panel_2 = new JPanel();
getContentPane().add(panel_2, BorderLayout.CENTER);
panel_2.setLayout(new GridLayout(10,3)); JPanel panel_3 = new JPanel();
panel_2.add(panel_3);
panel_3.setLayout(new GridLayout(0, 2, 0, 0)); panel_3.add(P[0]); P[0].add(T[0]); panel_3.add(P[1]); P[1].add(T[10]); JPanel panel_4 = new JPanel();
panel_2.add(panel_4);
panel_4.setLayout(new GridLayout(0, 2, 0, 0)); panel_4.add(P[2]); P[2].add(T[1]); panel_4.add(P[3]); P[3].add(T[11]); JPanel panel_5 = new JPanel();
panel_2.add(panel_5);
panel_5.setLayout(new GridLayout(0, 2, 0, 0)); panel_5.add(P[4]); P[4].add(T[2]); panel_5.add(P[5]); P[5].add(T[12]); JPanel panel_6 = new JPanel();
panel_2.add(panel_6);
panel_6.setLayout(new GridLayout(0, 2, 0, 0)); panel_6.add(P[6]); P[6].add(T[3]); panel_6.add(P[7]); P[7].add(T[13]); JPanel panel_7 = new JPanel();
panel_2.add(panel_7);
panel_7.setLayout(new GridLayout(0, 2, 0, 0)); panel_7.add(P[8]); P[8].add(T[4]); panel_7.add(P[9]); P[9].add(T[14]); JPanel panel_8 = new JPanel();
panel_2.add(panel_8);
panel_8.setLayout(new GridLayout(0, 2, 0, 0)); panel_8.add(P[10]); P[10].add(T[5]); panel_8.add(P[11]); P[11].add(T[15]); JPanel panel_9 = new JPanel();
panel_2.add(panel_9);
panel_9.setLayout(new GridLayout(0, 2, 0, 0)); panel_9.add(P[12]); P[12].add(T[6]); panel_9.add(P[13]); P[13].add(T[16]); JPanel panel_10 = new JPanel();
panel_2.add(panel_10);
panel_10.setLayout(new GridLayout(0, 2, 0, 0)); panel_10.add(P[14]); P[14].add(T[7]); panel_10.add(P[15]); P[15].add(T[17]); JPanel panel_11 = new JPanel();
panel_2.add(panel_11);
panel_11.setLayout(new GridLayout(0, 2, 0, 0)); panel_11.add(P[16]); P[16].add(T[8]); panel_11.add(P[17]); P[17].add(T[18]); JPanel panel_12 = new JPanel();
panel_2.add(panel_12);
panel_12.setLayout(new GridLayout(0, 2, 0, 0)); panel_12.add(P[18]); P[18].add(T[9]); panel_12.add(P[19]); P[19].add(T[19]);
Timer tmr = new Timer(1000, this);
this.tmr = tmr;
setSize(500,500);
setLocationRelativeTo(null);
setVisible(true); }
public void actionPerformed(ActionEvent e) {
if (e.getSource() == button)
{
if(a == 0)
{
for(int i=0;i<24;i++)
{
P[i].setBackground(Color.GRAY);
}
a++;
}
else if (a == 1)
{
for(int i=0;i<24;i++)
{
P[i].setBackground(Color.orange); }
a++;
}
else if (a == 2) {
for(int i=0;i<24;i++)
{
P[i].setBackground(Color.pink); }
a=0;
}
}
if (e.getSource() == b1)
{
int i=0;
do
{
int a,d,d1,d2;
d1=(int)(1+Math.random()*(100-1+1));
d2=(int)(1+Math.random()*(100-1+1));
a=(int)(Math.random()*5);
d=(int)(Math.random()*12+1);
if(a==0)
{
T[i].setText(d1+"+"+d2+"=");
daan[i]=d1+d2;
}
if(a==1)
{
T[i].setText(d1+"-"+d2+"=");
daan[i]=d1-d2;
}
if(a==2)
{
T[i].setText(d1+"×"+d2+"=");
daan[i]=d1*d2;
}
if(a==3)
{
if(d2==0)
d2=d2+1;
T[i].setText(d1+"÷"+d2+"=");
daan[i]=d1/d2;
}
if(a==4)
{
T[i].setText(d+"!");
daan[i]=jiecheng(d);
}
i++;
}while(i<10);
t1.setText("0");
tmr.start();
} else {
int t;
t = Integer.parseInt(t1.getText());
t++;
t1.setText("" + t); if (t >= 120) {
JFrame f=new JFrame();
JOptionPane.showMessageDialog(f,"时间到,请交卷");
tmr.stop();
}
} if (e.getSource() == b2)
{
int n=0;
for(int k=0;k<20;k++)
{
try
{
if(T[k+10].getText().length()==0)
{
continue;
}
if(daan[k]==Integer.parseInt(T[k+10].getText()))
{
n++;
}
}
catch(ArrayIndexOutOfBoundsException x)
{ }
}
textField_11.setText(""+n);
textField_10.setText(""+(10-n));
textField_12.setText(""+(10*n));
JFrame f=new JFrame();
JOptionPane.showMessageDialog(f,""+daan[0]+"\n"+daan[1]+"\n"+daan[2]+"\n"+daan[3]+"\n"+daan[4]+"\n"+daan[5]+"\n"+daan[6]+"\n"+daan[7]+"\n"+daan[8]+"\n"+daan[9]);
tmr.stop();
}
} private int jiecheng(int x)
{
if(x==0 || x==1)
{
return 1;
}
else
{
return x*jiecheng(x-1);
}
}
public static void main(String[] args) {
new jiemian();
}
}

心得体会:

吴旭涛:

通过四则运算的编码,编程Java界面的时,通过jdk的插件

,对按钮、输入框都有了一定的掌握,对于结对合作的方面,

加深了团队合作的重要性,对计算机编程开发、执行、

应用软件等方面有重大的意义

王宏财:

在编码四则运算过程中,

初步了解了Java界面和C语言相结合的特点,

对于随机生成四则运算方面遇到不晓得问题

,统计运行时间、错题、对题、对面板换肤等方面有点不足,

还有待进步。通过这次结对合作,

充分体会到团队合作的重要性,

以后会好好对待每一个合作机会

优点:

1.按开始按键就开始计时,按交卷键就暂停即总时间

2.有计算答对的个数,答错的个数和总分

3.能换多种皮肤

缺点:

1.计时器到了120秒不会自动交卷

2.再按开始,答题区不会清空

3.没写哪道题对,哪道题错

合作:王宏财  http://www.cnblogs.com/wanghongcai/

实验二 合作:王宏财 http://www.cnblogs.com/wanghongcai/的更多相关文章

  1. 20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计

    20162317袁逸灏 第八周实验报告:实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 ...

  2. 2018-2019-2 20175317 实验二《Java面向对象程序设计》实验报告

    2018-2019-2 20175317 实验二<Java面向对象程序设计>实验报告 一.实验步骤及内容 面向对象程序设计-1 参考 http://www.cnblogs.com/roce ...

  3. 2018-2019-2 学号20175223 实验二《Java面向对象程序设计》实验报告

    目录 北京电子科技学院(BESTI)实验报告 实验名称:实验二 面向对象程序设计 实验内容.步骤与体会: 一.实验二 面向对象程序设计-1 二.实验二 面向对象程序设计-2 三.实验二 面向对象程序设 ...

  4. 2018-2019-2 20175310 实验二《Java面向对象程序设计》实验报告

    2018-2019-2 20175310 实验二<Java面向对象程序设计>实验报告 一.实验步骤及内容 (一).面向对象程序设计-1 参考 http://www.cnblogs.com/ ...

  5. 2017-2018-2 20165206 实验二《Java面向对象程序设计》实验报告

    2017-2018-2 20165206 实验二<Java面向对象程序设计>实验报告 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:韩啸 学号:20165206 指导教 ...

  6. 20165220实验二《Java面向对象程序设计》

    实验封面: 实验二 面向对象程序设计-1 实验要求: 参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST 参考http://www. ...

  7. 20165305 实验二:Java面向对象程序设计

    2-1 参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST 参考http://www.cnblogs.com/rocedu/p/67 ...

  8. 20165203 实验二 Java面向对象程序设计

    20165203 实验二 Java面向对象程序设计 一.面向对象程序设计1--单元测试和TDD 1.实验要求 参考 (http://www.cnblogs.com/rocedu/p/6371315.h ...

  9. 20155304 2016-2017-2 《Java程序设计》实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 没有Linux ...

随机推荐

  1. 使用if语句时应注意的问题(初学者)

    (1)在三种形式的if语句中,在if关键字之后均为表达式.该表达式通常是逻辑表达式或关系表达式,但也可以是其他表达式,如赋值表达式等,甚至也可以是一个变量. 例:if(a=5)语句: if(b)语句: ...

  2. Go学习笔记02-基本语法

    目录 变量定义 代码示例 变量定义 内建变量类型 复数回顾 强制类型转换 常量 枚举类型 变量定义 代码示例 package main import "fmt" /* 此处定义的变 ...

  3. 如何自定义FusionCharts图表上的工具提示?

    中的工具提示是什么?当鼠标悬停在一个特定的数据点上时就会显示工具提示,提示以下信息: 单系列图表(饼图和圆环除外):名称及数值 Pie & Doughnut:名称及数值/百分比 多系列组合图表 ...

  4. ActivityThread

    /** * This manages the execution of the main thread in an * application process, scheduling and exec ...

  5. 使用OPEN XML SDK 读取EXCEL中的超链接Hyperlink

    使用OPEN XML SDK 读取EXCEL中的超链接Hyperlink 原理 先创建一个包括全部EXCEL单元格中超链接Hyperlink数据的表,再定位单元格通过列头(如A1,B1)获取超链接信息 ...

  6. centos7下安装docker(6镜像总结)

    学了很长时间的镜像了,从镜像的分层,缓存的特性,到制作镜像:通过docker commint和docker build创建,再到制作dockerfile以及dockerfile中常用的参数FROM,M ...

  7. Codeforces Round #524 (Div. 2) C. Masha and two friends 几何:判断矩形是否相交以及相交矩形坐标

    题意 :给出一个初始的黑白相间的棋盘  有两个人  第一个人先用白色染一块矩形区域 第二个人再用黑色染一块矩形区域 问最后黑白格子各有多少个 思路:这题的关键在于求相交的矩形区间 给出一个矩形的左下和 ...

  8. win7下面搭建angularjs开发环境

    每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code 1.安装git,添加环境变量2.github上有一个比较好的纯净AngularJs app的种 ...

  9. CSS中脱离文档流是什么意思?

    如果一个元素脱离文档流了,是不是只是显示上脱离而已?在html中是否也会脱离?我用js取这个元素的父节点的childNodes还能否取到这个元素:同时,这个元素的parentNode还是不是html中 ...

  10. 深入浅出的webpack构建工具---DllPlugin DllReferencePlugin提高构建速度(七)

    阅读目录 一:什么是DllPlugin 和 DllReferencePlugin?作用是什么? 二:在项目中如何使用 DllPlugin 和 DllReferencePlugin? 三:DllPlug ...