JAVA小程序--裁判评分系统
来源:互联网 发布:phpcms和帝国cms 编辑:程序博客网 时间:2024/05/16 06:28
实现功能:n个评委打分,运动员的成绩是n个成绩去掉一个最高分和一个最低分,剩下的n-2个分数的平均分就是最后得分。
使用一维数组实现打分功能,并找出打出最高分和最低分的裁判,打分水平最好和最坏的裁判;
详细代码和代码注解如下:
/* * 功能:跳水比赛,评委打分。 * 运动员的成绩是n个成绩去掉一个最高分和一个最低分, * 剩下的n-2个分数的平均分就是最后得分。 * 使用一维数组实现打分功能,并找出打出最高分和最低分的裁判,打分水平最好和最坏的裁判 * 作者:zyj0813 */package com.home1;import java.io.*;public class Home1_1 {public static void main(String[] args) {Judge judge=new Judge();System.out.println(judge.lastFen());//打印裁判时,直接调用类中的最高分和最低分的下标的函数,这里注意的是数组中的下标从0开始,裁判的下标要加1,这里加1一定要和调用的函数括起来。System.out.println("最低分裁判:"+(judge.getLowFenIndex()+1));System.out.println("最高分裁判:"+(judge.getMaxFenIndex()+1));System.out.println("最好打分水平的裁判:"+(judge.getbest()+1));System.out.println("最差打分水平的裁判:"+(judge.getworst()+1));}}//创建一个评分类class Judge{//定义一个可以存放8个数的数组float[] fens=null;int size=4;//构造函数public Judge(){fens=new float[size];//初始化.从键盘输入裁判的打分分数,使用一个Buffer流来输入,下面的try catch抛出异常,避免输入的成绩不是数字。InputStreamReader isr=new InputStreamReader(System.in);BufferedReader br=new BufferedReader(isr);try{for(int i=0;i<fens.length;i++){System.out.println("请输入第"+(i+1)+"裁判的成绩");fens[i]=Float.parseFloat(br.readLine());}}catch(Exception e){e.printStackTrace();}finally{try {br.close();//通过finally来结束数据流,这里也有一个异常要抛出。} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}//得到最好评委public int getbest(){float lastFen=this.lastFen();//先认为第一个评委最好的水平int bestIndex=0;//评委打的分与最后得分分数的差值的绝对值float temp=Math.abs(fens[0]-lastFen);for(int i=1;i<fens.length;i++){if(temp>=Math.abs(fens[i]-lastFen)){bestIndex=i;temp=Math.abs(fens[i]-lastFen);}}return bestIndex;}//得到最差评委public int getworst(){float lastFen=this.lastFen();//先认为第一个评委是最差的水平int worstIndex=0;//评委打的分与最后得分分数的差值的绝对值float cai=Math.abs(fens[0]-lastFen);for(int i=1;i<fens.length;i++){if(cai<=Math.abs(fens[i]-lastFen)){worstIndex=i;cai=Math.abs(fens[i]-lastFen);}}return worstIndex;}
//得到一个运动员的最后得分public float lastFen(){float lastFen=0;float allFen=0;int minIndex=this.getLowFenIndex();int maxIndex=this.getMaxFenIndex();for(int i=0;i<fens.length;i++){if(i!=minIndex&&i!=maxIndex){allFen+=fens[i];}}return allFen/(fens.length-2);}//1、去掉最低分(找到下标)public int getLowFenIndex(){//选择法//认为第一个是最低分float minFen=fens[0];int minIndex=0;for(int i=1;i<fens.length;i++){if(fens[i]<minFen){minFen=fens[i];minIndex=i;}}return minIndex;}//2、去掉最高分(找下标),也代表裁判的下标public int getMaxFenIndex(){//选择法//认为第一个是最低分float maxFen=fens[0];int maxIndex=0;for(int i=1;i<fens.length;i++){if(fens[i]>maxFen){maxFen=fens[i];maxIndex=i;}}return maxIndex;}}
阅读全文
0 0
- JAVA小程序--裁判评分系统
- 裁判班记录场次小程序
- 小项目-星级评分系统
- 篮球比赛裁判--评分器,一起看看吧
- 小程序展示评分结果合评分功能
- 员工评分系统现场发布小感
- java监视系统内存状态小程序
- 租车系统Java版小程序
- Java小程序教务管理系统
- java 小程序之随机点名系统
- JAVA小程序—学生点名系统
- 【寻找最佳小程序】01期:影视评分小工具“豆瓣评分”——产品设计要点及专家评析
- java模拟系统进程算法的小程序
- 航空系统java程序连接数据库小练手
- 开发一个评分程序
- 微信小程序-五星评分
- 歌星大奖赛,评分系统
- 考试自动评分系统
- 学生信息管理系统之第二篇主要功能模块设计和数据库设计
- Hive删除表
- python进行JB正态性检验
- volatile关键字解析(jdk1.5之后)
- Java线程常用操作方法
- JAVA小程序--裁判评分系统
- HTML5+JavaScript+CSS实现音乐播放器——难点一:动态生成播放列表
- matlab的gscale函数
- webdriver 等待方法
- 优秀博客地址
- 计蒜客ACM ICPC 2017 Warmup Contest 9--C题
- ggplot2柱形图Y轴坐标扩展的简单方法
- 《多核程序设计》学习笔记:矩阵乘法并行化
- Java线程的同步与死锁