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语句(初学者)

    用if语句可以构成分支结构.它根据给定的条件进行判断,以决定执行某个分支程序段.C语言的if语句有三种基本形式. 1.基本形式:if(表达式)语句 其语义是:如果表达式的值为真,则执行其后的语句,否则 ...

  2. 软件工程实践_Task1

    (1)回想一下你初入大学时对计算机专业的畅想 当初你是如何做出选择计算机专业的决定的? 说起来,当初选择计算机专业的缘由,更多应该归因于兴趣.虽然对CS全然不知,但也一点都不妨碍对它的神奇感到向往.再 ...

  3. SQL2008 一直error40 无法连接到localhost

    1. Problem 2. Reason 可能是之前卸载SQL Server时没卸载干净 后来又重新安装时导致默认实例名不能用 就随手写了个SQLMOLORY实例名 但其实系统内这时是有两个SQL实例 ...

  4. jQuery的收尾

    一  后台管理布局增删改 二  常用事件 三  jQuery扩展 一  后台管理布局增删改(多种方法) <!DOCTYPE html> <!-- saved from url=(00 ...

  5. 如何解决JSP页面顶端报错 The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    题目有点长,昨天刚接触jsp,按照网上的教程安装完 tomcat 和 eclipse EE 之后,新建jsp文件却出现了如下报错: The superclass "javax.servlet ...

  6. Java程序在Linux上运行虚拟内存耗用很大

    突然集群的2个节点挂了,通过top查看, 虚拟内存22G, 通过 pmap -x 8 | grep anon 一大堆64M Linux下glibc的内存管理机制用了一个很奇妙的东西,叫arena.在g ...

  7. MP实战系列(七)之集成springboot

    springboot是现在比较流行的微服使用的框架,springboot本质上就是将spring+springmvc+mybatis零配置化,基本上springboot的默认配置符合我们的开发.当然有 ...

  8. Qt+QGis二次开发:创建临时图层并添加要素

    开发环境:Win10 + VS2010 + Qt 4.8.6 + QGis 2.14.4 其实本文实现的功能类似于QGis中“添加文本数据图层”的一个简化版,本文不会涉及到对话框的使用,不通过与用户互 ...

  9. Linux C++调试利器-gdb

    在Linux上开发后台C++程序时,没有类似Windows VisualStudio那样强大的可视化IDE.为了提高调试效率,快速定位问题,需要掌握gdb工具的一些基本用法. 添加调试符号信息  co ...

  10. linux 用xshell工具远程登录

    1.设置linux,获取ip,登录名.密码 2.xshell登录