结对项目实验
一.程序题
有1、2、3、4、5、6、7个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
二.程序分析
输出的是无重复数字的三位数,那么首先应该解决在一个数组中,一个数字绝对不能出现两次,那么我们就写两个方法来完成,第一个方法 printNum1 先把第一位i找出来,然后在定义一个长度为比上一个数组少一位的数组的方法getArray
三.源代码托管地址
https://github.com/liuyunandyi/Text/tree/master
四.源代码
public void printNum1(){
String[]nums ={"1","2","3","4","5","6","7"};
for(int i =0;i<nums.length;i++){
String num1 =nums[i];
String[] nums1 =this.getArray(num1, nums);
for(int j =0;j<nums1.length;j++){
String num2 = nums1[j];
String[] nums2 =this.getArray(num2, nums1);
for(int k =0;k<nums2.length;k++){
String num3 = nums2[k];
System.out.print(num1+num2+num3+" ");
}
}
}
}
public String[] getArray(String num,String[]nums){
int index =0;
String[] newNums = new String[nums.length-1];
for(int i =0;i<nums.length;i++){
String data = nums[i];
if(data!=num){
newNums[index] = data;
index ++;
}
}
return newNums;
}
}
程序截图:
五.程序测试:
六.实验分工:
再本次结对编程项目中,我跟我的结对人分别从事了编码,上面程序中的getArray的方法是我写的,printNum1的方法是我的结对人写的,我主要是负责审查,我的结对人负责则单元测试,分工合作很愉快。
结对人地址:http://www.cnblogs.com/zp1com/p/4495067.html
七.实验总结:
这次的试验不是个人项目,需要跟伙伴结对完成,发现结对项目好处多多, 减轻了程序员的审查这方面工作,做得比以前认真还有速度,节省了很多时间。