第一次实训
1.16012107 邹彤
16012113 孙宁君
地址:https://gitee.com/ztsxxny/codes/p2kseig4qb7mwz9j6hc8125
2.照片
3.代码
import java.awt.event.MouseEvent; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in=new Scanner(System.in); 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(); System.out.println("请输入游戏次数"); double numg=in.nextDouble(); 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(); 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;//最接近G点的值玩家的分为N if(goal[th]==max) gan[th]=gan[th]-2;//最远的分数为-2 } for(int tt=0;tt<nump;tt++) { System.out.println("玩家得分为:"+gan[tt]);//输出各玩家的分数 } } } }
4.结果
.
5.感想:和同学合作编程和自己编程的感觉有大不同,可以看到对方的编程思路和自己的有些不同,可以互相学习,一起讨论解决问题的办法。
6.优点:思考问题快
缺点:考虑有些不全面,有小瑕疵
提高:更加认真仔细些