Java學習實例——數組_評委打分計算選手最終得分


  問題:某比賽五位評委打分,分數由鍵盤錄入,選手分數的計算規則為:去掉一個最高分,去掉一個最低分,然后計算平均值,所得的平均分為選手最終成績。

import java.util.Scanner;

public class Homework02 {
    public static void main(String[] args) {
        
        Scanner sc = new Scanner(System.in);
        //評委打分,五位評委打分,分數由鍵盤錄入,去掉一個最高分,去掉一個最低分,然后計算平均值,所得的平均分為選手最終成績
        judgesScores(sc);
    }
    //評委打分,五位評委打分,分數由鍵盤錄入,去掉一個最高分,去掉一個最低分,然后計算平均值,所得的平均分為選手最終成績
    public static void judgesScores(Scanner sc){
        int[] score = new int[5];
        gradesIn(sc,score);
        //平均值
        double average1 = (scoreAdd(score) - maxNum(score) - minNum(score))/(score.length-2);
        System.out.println("選手的最終得分是:"+average1);
    }
    //成績輸入
    public static int[] gradesIn(Scanner sc, int[] score){
        System.out.println("請輸入成績:");
        for(int i = 0;i < score.length;i++){
            int num = sc.nextInt();
            score[i] = num;
        }
        System.out.println("輸入的成績分別是:");
        for(int i = 0;i < score.length;i++){
            System.out.print(score[i] + " ");
        }
        System.out.println();
        return score;
    }
    //求成績之和
    public static int scoreAdd(int[] score){
        int scoreAdd1 = 0;
        for(int i = 0;i < score.length;i++){
           scoreAdd1 += score[i];
        }
        return scoreAdd1;
    }

    //求數組中的最大值
    public static int maxNum(int[] arr1){
        //求最大值
        int maxNum1 = arr1[0];
        for(int i = 1; i < arr1.length ;i++){
            if(arr1[i] > maxNum1){
                maxNum1 = arr1[i];
            }
        }
        return maxNum1;
    }
    //求數組中的最小值
    public static int minNum(int[] arr1){
        //求最小值
        int minNum1 = arr1[0];
        for(int i = 1; i < arr1.length ;i++){
            if(arr1[i] < minNum1){
                minNum1 = arr1[i];
            }
        }
        return minNum1;
    }

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM