一:實現功能git
由10位玩家參與遊戲,每位玩家輸入一個介於o~1000之間的整數,對全部玩家輸入的數作以下處理:先求和再平均,將平均數乘以黃金分割數0.618得出黃金值,用黃金值分別減去每位玩家輸入的數得出差,並對差進行取絕對值操做得出最後差,差最小的玩家加一分,差最大的玩家減一分,其他玩家分值不變。遊戲可進行多輪,分數疊加。若選擇從新開始則計分也從新開始。程序員
二:結對編程github
這次做業與以往不一樣,由於這次做業要求的是兩人結對,合做編程。重點在於學習如何與別人進行合做,目的在於經過這次實驗瞭解到團隊開發時成員之間是如何進行分工與合做的。個人團隊組成是:編程
唐正奎:http://www.cnblogs.com/tzk971118/數組
梅 慶:http://www.cnblogs.com/meiqing/(博客園地址) https://github.com/meinumber1(GitHub地址)學習
二:代碼實現blog
10位玩家分別輸入本身的數字:遊戲
scan=new Scanner(System.in); int num0=scan .nextInt(); int num1=scan .nextInt(); int num2=scan .nextInt(); int num3=scan .nextInt(); int num4=scan .nextInt(); int num5=scan .nextInt(); int num6=scan .nextInt(); int num7=scan .nextInt(); int num8=scan .nextInt(); int num9=scan .nextInt();開發
求出黃金值:博客
float goldenPoint=(float) ((float)(num0+num1+num2+num3+num4+num5+num6+num7+num8+num9)/10*0.618);
求出每位玩家所報數字與黃金值的差的絕對值:
System.out.println("報數 與黃金值的差"); float num0_0=goldenPoint -num0; float num0_1=goldenPoint -num1; float num0_2=goldenPoint -num2; float num0_3=goldenPoint -num3; float num0_4=goldenPoint -num4; float num0_5=goldenPoint -num5; float num0_6=goldenPoint -num6; float num0_7=goldenPoint -num7; float num0_8=goldenPoint -num8; float num0_9=goldenPoint -num9;
num0_0=Math.abs(num0_0); num0_1=Math.abs(num0_1); num0_2=Math.abs(num0_2); num0_3=Math.abs(num0_3); num0_4=Math.abs(num0_4); num0_5=Math.abs(num0_5); num0_6=Math.abs(num0_6); num0_7=Math.abs(num0_7); num0_8=Math.abs(num0_8); num0_9=Math.abs(num0_9);
將求出的差放入一個數組,求出數組最大最小值並給出其下標,最小值對應的玩家加一分,最大值對應的玩家減一分,對其他玩家不進行操做:
float a[]={num0_0,num0_1,num0_2,num0_3,num0_4,num0_5,num0_6,num0_7,num0_8,num0_9};
float max=a[0]; float min=a[0]; int x = 0,y=0; for (int i = 0; i < a.length; i++) { if (max<a[i]) {
max=a[i]; x=i; } } System.out.println("max="+max+" "+"第"+(x+1)+"位玩家減一分"); for (int i = 0; i < a.length; i++) {
if (min>a[i]) { min=a[i]; y=i; } } System.out.println("min="+min+" "+"第"+(y+1)+"位玩家加一分"+"\n"+"其他玩家分值不變!");
四:總結
經過本次實驗,咱們認識到,如今已經不是之前那個一我的編程的時代了,大部分軟件都須要與人合做編寫,所以,學會與人合做,是每一個程序員都須要學會的基礎技能,只有學會了與人合做,才能快速,準確的寫出好程序。