运动员评分系统

假设一位运动员完成比赛后,8位裁判为其打分,最终结果为去掉最高分与最低分之后的平均分,请给出上述代码。

package xxxx;
import java.util.*;
public class test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
     评分系统 judge=new 评分系统();
     System.out.println("这位运动员的最后得分为:"+judge.LastFen());
	}

}
class 评分系统{
	//定义一个可以存放8个小数的数组
	float []fens=null;
	int size=8;
	//构造函数
	public 评分系统(){
		fens=new float[size];
		//初始化
		for(int i=0;i<fens.length;i++){
			try {
				System.out.println("请输入第"+(i+1)+"位裁判的成绩");
				Scanner scanner=new Scanner(System.in);
				 fens[i]=scanner.nextFloat();
			} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	//得到运动员的最后得分
    public float LastFen(){
        float allFen=0;
    	float lastFen=0;
        int lowIndex=this.getLowFenIndex();
        int highIndex=this.getHighFenIndex();
        for(int i=0;i<fens.length;i++){
        	if(i!=lowIndex&&i!=highIndex){
        		allFen+=fens[i];
        	}
        }
        lastFen=allFen/(fens.length-2);
        return lastFen;
    }
	//1.最低分(找到最低分的 下标)
    public int getLowFenIndex(){
    	//选择法
    	//认为第一个是最低分
    	float minFen=fens[0];
    	int minIndex=0;
    	for(int i=1;i<fens.length;i++){
    		if(minFen>fens[i]){
    			minFen=fens[i];
    			minIndex=i;
    		}
    	}
    	return minIndex;
    }
  //2.最高分(找到最高分的 下标)
    public int getHighFenIndex(){
    	//选择法
    	//认为第一个是最高分
    	float highFen=fens[0];
    	int highIndex=0;
    	for(int i=1;i<fens.length;i++){
    		if(highFen<fens[i]){
    			highFen=fens[i];
    			highIndex=i;
    		}
    	}
    	return highIndex;
    }
    
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值