1.问题描述
某公司程序员二柱的小孩上了小学二年级,老师让家长每天出100道(100以内)四则运算题目给小学生做。
2.结对编程代码如下:
package com.wangzuying.jieduibiancheng;
import java.util.Random;
public class AutoGetProject {
private static Random random = new Random();
private final static int COUNT = 30;
private static boolean getProject() {
int num1 = random.nextInt(101);
int num2 = random.nextInt(101);
int index = random.nextInt(4);
String str = "";
boolean flag = false;
int answer = 0;
switch (index) {
case 0:
answer = num1 + num2;
if (answer > 100) {
break;
}
str = num1 + "+" + num2 + "=";
flag = true;
break;
case 1:
if (num1 < num2) {
break;
}
str = num1 + "-" + num2 + "=";
flag = true;
break;
case 2:
answer = num1 * num2;
if (answer > 100) {
break;
}
str = num1 + "*" + num2 + "=";
flag = true;
break;
case 3:
if (num2 == 0) {
break;
}
str = num1 + "÷" + num2 + "=";
flag = true;
break;
}
if (flag) {
System.out.println(str);
}
return flag;
}
public static void main(String[] args) {
System.out.println("随机得到的30道四则运算题目如下:");
int count = 0;
do {
if (getProject()) {
count++;
}
} while (count < COUNT);
}
}
3.运行结果
4.心得体会
第一次听说“结对编程”,初听起来,颇为有趣实际操作起来,才发现诸多漏洞。俗话说:“站在岸上学不会游泳!”,
当你真的动手去做了,必定有收获。
根据对李老师讲述的理解,带着好奇,揣着乐趣找个队友便开始我们的“结对编程”之旅。队友编程能力较强些,她
负责敲代码,我负责在她编码同时查看是否出错。再者,我们必须先进行沟通,我们即将实现什么样的功能?如何实现?
甚至细化到用什么类来实现,需要什么返回类型。
(5)在项目上,结对工作可以融合两个人的想法,可以避免一些低级的错误,使整个开发过程更加的高效; 如果运用
我觉得每人在各自独立设计、实现软件的过程中不免要犯这样那样的错误。在结对编程中,因为有随时的复审和交流,
程序各方面的质量取决于一对程序员中各方面水平较高的那一位。这样,程序中的错误就会少得多,程序的初始质量会高
很多,这样会省下很多以后修改、测试的时间。
经过这次结对编程后,收获良多。不仅认识了另一种编程方式,还深刻的体会到了,自己是很难意识到自己的错误的。
所以,可以把队友当成一面镜子,完善程序,也完善自己。