Java案例:裁判判分

題目:

在編程競賽中,有6個評委爲參賽的選手打分,打分的分數範圍爲0-100的整數分。java

選手的最後得分規則爲:(最高分算法,最低分算法,平均值算法)算法

去掉一個最高分,再去掉一個最低分,編程

其他4個分數的平均值就是選手最終分數。(不考慮小數部分)dom

打印結果以下:工具

今日(20xx-xx-xx)6位評委的分數分別爲:9三、2四、5四、7八、9九、69code

去掉一個最高分、去掉一個最低分字符串

最終得分爲:73分get

代碼實現:

/*
        重點:最值算法
    * 在編程競賽中,有6個評委爲參賽的選手打分,打分的分數範圍爲0-100的整數分。
        選手的最後得分規則爲:(最高分算法,最低分算法,平均值算法)
        去掉一個最高分,再去掉一個最低分,
        其他4個分數的平均值就是選手最終分數。(不考慮小數部分)

            打印結果以下:
            今日(20xx-xx-xx)6位評委的分數分別爲:9三、2四、5四、7八、9九、69
            去掉一個最高分、去掉一個最低分
            最終得分爲:73分
    * */
    public static void main(String[] args) {
        //①準備數據
        //定義六個評委的分數
        int a,b,c,d,e,f;
        //定義兩個變量:最高分,最低分
        int max,min;
        //定義變量保存最終得分
        int finalTotal;
        //獲取當前時間
        Date d1 = new Date();
        //獲取年月日的字符串
        String today = (d1.getYear()+1900)+"-"+(d1.getMonth()+1)+"-"+d1.getDate();
        //定義隨機數工具
        Random r1 = new Random();
        //②處理數據
        //生成隨機分數
        a = r1.nextInt(101);
        b = r1.nextInt(101);
        c = r1.nextInt(101);
        d = r1.nextInt(101);
        e = r1.nextInt(101);
        f = r1.nextInt(101);
        //獲取最高分
        max = a>b?a:b;
        max = max>c?max:c;
        max = max>d?max:d;
        max = max>e?max:e;
        max = max>f?max:f;

        //獲取最低分
        min = a<b?a:b;
        min = min<c?min:c;
        min = min<d?min:d;
        min = min<e?min:e;
        min = min<f?min:f;
        //最終得分 = (6個分數的總分-最高分-最低分)/4
        finalTotal = (a+b+c+d+e+f-max-min)/4;

        //③展現結果
        System.out.println("今日("+today+")6位評委的分數分別爲:"
                +a+"、"+b+"、"+c+"、"+d+"、"+e+"、"+f);
        System.out.println("去掉一個最高分"+max+"、去掉一個最低分"+min);
        System.out.println("最終得分爲:"+finalTotal+"分");
    }
相關文章
相關標籤/搜索