1、此程序是在Eclipce环境下调试的。
2、增加了“2、3、4、5”四个功能。
3、结对同伴为黄国柱-201306114432,其博客地址为
http://www.cnblogs.com/zzhuzi/
4、在这次结对编程中,我是驾驶员,编写程序,实现四个拓展功能。测试程序,以及最后代码的完善和提交。同伴是领航员,做了程序类的设计,界面的设计,帮助我解决具体的技术问题。我们不断轮换角色,互相合作,最终完成项目。
5、总结
在这次结对编程中,我和同伴估计实现所需的时间为8天,结果与预期大致相同。其中,结对编程用了6天。有句话叫做“不怕神一样的对手,就怕猪一样的队友”
,我觉得我有一个好队友,我与我的队友相互协调,相互合作。在结对编程中,我是驾驶员,编写程序,实现四个拓展功能。测试程序,以及最后代码的完善和提交。同伴是领航员,做了程序类的设计,界面的设计,帮助我解决具体的技术问题。我们不断轮换角色,互相合作,最终完成项目。
在编程过程中,我们遇到了许多问题,比如功能不能实现,程序不能运行。我们两人讨论一下,冷静解决。如果还是出问题,我们就在网上和书上查找原因,直到问题解决为止。两人在一起合作,自然会出现不同意见,因为每个人都有自己的想法。因此,在合作过程中,我们相互尊重,相互理解。这次结对编程,我和同伴相互学习,相互磨合,最终完成了项目。这使我更加懂得队友的重要性,不能忽视团队精神。这是一次很好的结对编程经历,长见识了很多。路漫漫其修远兮,吾将上下而求索。
6、照片
import javax.swing.*; import java.awt.*; //导入必要的包 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Scanner; public class Jiemian { public static void main(String[] args) { Aframe a = new Aframe(); } } class Aframe extends JFrame { JTextField jTextField;// 定义文本框组件 JPasswordField jPasswordField;// 定义密码框组件 JLabel jLabel1, jLabel2; JPanel jp1, jp2, jp3; public Aframe() { JButton jbu1, jbu2; jTextField = new JTextField(13); jPasswordField = new JPasswordField(13); jLabel1 = new JLabel("账号"); jLabel2 = new JLabel("密码"); jbu1 = new JButton("确认"); jbu2 = new JButton("取消"); jbu1.addActionListener(new Jbu1Handle()); jbu2.addActionListener(new Jbu2Handle()); jp1 = new JPanel(); jp2 = new JPanel(); jp3 = new JPanel(); // 设置布局 this.setLayout(new GridLayout(3, 1)); jp1.add(jLabel1); jp1.add(jTextField);// 第一块面板添加用户名和文本框 jp2.add(jLabel2); jp2.add(jPasswordField);// 第二块面板添加密码和密码输入框 jp3.add(jbu1); jp3.add(jbu2); // 第三块面板添加确认和取消 // jp3.setLayout(new FlowLayout()); // //因为JPanel默认布局方式为FlowLayout,所以可以注销这段代码. this.add(jp1); this.add(jp2); this.add(jp3); // 将三块面板添加到登陆框上面(容器上) // 设置显示 this.setSize(300, 200); this.pack(); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setTitle("登陆"); } } class Jbu1Handle implements ActionListener { public void actionPerformed(ActionEvent e) { int a, b, c, d; int systemanswer = 0; int useranswer = 0; int rightnumber = 0; char op = 0; String login; System.out.println("欢迎使用自动生成小学四则运算程序"); System.out.println("请输入用户名:"); Scanner ss = new Scanner(System.in); login = ss.nextLine(); System.out.println("请选择出题的数量(<=5)"); Scanner sc = new Scanner(System.in); d = sc.nextInt(); if (d > 5 || d <= 0) System.exit(0); for (int i = 1; i <= d; i++) { a = 1 + (int) (Math.random() * 100); b = 1 + (int) (Math.random() * 100); c = 1 + (int) (Math.random() * d); switch (c) { case 1: op = '+'; systemanswer = a + b; break; case 2: op = '-'; systemanswer = a - b; break; case 3: op = '*'; systemanswer = a * (-b); break; case 4: op = '/'; systemanswer = a / b; break; case 5: op = '!'; systemanswer = jiecheng(a); break; default: System.exit(0); } if (c == 5) { System.out.printf("%d%c=? ", a, op); } else if (c == 3) { System.out.printf("%d%c(%d)=? ", a, op, -b); } else { System.out.printf("%d%c%d=? ", a, op, b); } System.out.print("结果为:"); Scanner in = new Scanner(System.in); useranswer = in.nextInt(); if (useranswer == systemanswer) { System.out.printf("right! "); rightnumber++; } else { System.out.printf("wrong! "); } } System.out.println("答对" + rightnumber + "条" + ",答错" + (d - rightnumber) + "条"); } public static int jiecheng(int a) { int result = 1; for (int i = 1; i <= a; i++) { if (a < 0) System.exit(0); else { result *= i; } } return result; } } class Jbu2Handle implements ActionListener { public void actionPerformed(ActionEvent e) { System.exit(0); } }