• 实验二


    1、此程序是在Eclipce环境下调试的。

    2、增加了“2345”四个功能

    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);
        }
    }
  • 相关阅读:
    使用OPC的方式去连接PLC进行AB SLC-5_04数据的采集
    pytest:conftest.py运行细节一则
    《数据结构与算法》和《设计模式》之开门见山篇
    C语言真正的编译过程
    外挂原理之植物大战僵尸
    ORACLE数据库创建动态表
    JS中事件绑定问题
    由 “无法使用从远程表选择的 lob 定位符” 错误而引导出来的一系列问题解决方案
    安装JDK,配置环境变量有感
    MSSQL 常见故障处理
  • 原文地址:https://www.cnblogs.com/kangqu/p/4410163.html
Copyright © 2020-2023  润新知