项目1
码云地址:https://gitee.com/xiaoshishuya/codes
1.结对编程成员:
16012109郭美晴
16012116张文竹
2.选择题目
黄金点
阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏:
N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。记录每一次游戏每名同学的数字和分数。
结对编程过程照片

3.代码
import java.awt.event.MouseEvent;
import java.util.Scanner;
public class gz {
public static void main(String args[])
{
Scanner in=new Scanner(System.in); //使用Scanner类定义对象
double numn[][] = new double [100][100];
double goal[] = new double [100];
double gan[] = new double [100];
double max=0,min=100;
double sum=0,G=0;
System.out.println("请输入人数");
double nump=in.nextDouble(); //接收float型数据
System.out.println("请输入游戏次数");
double numg=in.nextDouble(); //接收float型数
for(int h=0;h<nump;h++){
goal[h]=0;
gan[h]=0;
}
for(int s=0;s<numg;s++)
{
System.out.println("游戏开始");
for(int k=0;k<nump;k++) {
System.out.println("玩家输入");
double num = in.nextDouble(); //接收float型数据
numn[s][k]=num;
}
for(int j=0;j<nump;j++)
{
sum+=numn[s][j];
}
G=(sum/nump)*0.618;//求G值
double dif=0;
for(int qq=0;qq<nump;qq++){//求分数
dif=Math.abs(numn[s][qq]-G);
goal[qq]=dif;
}
for(int f=0;f<nump;f++)
{
if(max<goal[f])
max=goal[f];
if(min>goal[f])
min=goal[f];
}
for(int th=0;th<nump;th++)
{
if(goal[th]==min)
gan[th]=gan[th]+nump;
if(goal[th]==max)
gan[th]=gan[th]-2;
}
for(int tt=0;tt<nump;tt++)
{
System.out.println(gan[tt]);
}
}
}
}
4.运行结果截图


5.感受和体会
结对编程真的能够带来1+1>2的效果吗?通过这次结对编程,请谈谈你的感受和体会。
在这次合作中获得了很多,两个人一起思考一起讨论互补,使学习的过程不会那么枯燥,有的问题一个人可能会百思不得其解,但两个人在一起思考的话往往会很快解决,节省很多时间
6. 运用“汉堡包”的方式,评价你的合作伙伴,指出优点、缺点,希望ta提高的地方
优点:
有很强的执行能力,刚想到的思路,马上就会去验证,合作的很好
缺点:
对于这次结对编程项目,有一些的问题报漏出来,一些知识点掌握的不是很扎实,我想这也是我的缺点
浙公网安备 33010602011771号