JAVA PTA 7-1 作品評分 (10 分)


全國中小學生Scratch作品大賽拉開了序幕。每個參賽選手可以通過網絡直接上傳作品。本次比賽人人可做評委。每個網絡評委可以通過網絡對每一件作品進行打分。評分系統也是請程序高手設計的,能自動去掉一個最高分和一個最低分,求出平均分。

輸入格式:

輸入數據包括兩行: 第一行為n,表示n個評委,n>2。 第二行是n個評委的打分,分數之間有一個空格。打分是可以帶有小數部分的。

輸出格式:

輸出平均分,結果保留兩位小數。

輸入樣例:

6
10 9 8 7.9 9 9.5

輸出樣例:

8.88

 

import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);//通過new Scanner(System.in)創建一個新的Scanner命名為in,控制台會一直等待輸入,直到敲回車鍵結束,
                                            //把所輸入的內容傳給Scanner,作為掃描對象。
        int n = in.nextInt();//只能輸入int類型的字符串
        in.nextLine();//返回Enter鍵之前的所有字符,所以可以得到帶空格的字符串
        float sum = 0;
        List<Float> nums = new ArrayList<Float>();//是泛型,表示該List中只能放Float對象
        String[] line = in.nextLine().split(" ");//根據空格,將字符串拆分為字符串數組。
        for (String str : line) {
            nums.add(Float.valueOf(str));//Float.valueOf(String)是把String字符串轉換成float的封裝類Float
        }
        Collections.sort(nums);//由小到大對List集合中的元素進行排序
        nums.remove(0);//去掉最小值
        nums.remove(nums.size() - 1);//去掉最大值
        for (double num : nums) {
            sum += num;
        }//求去掉最小數和最大數后的和
        System.out.println(String.format("%.2f", sum / (n - 2)));//.format將平均分轉換為兩位小數的浮點數
    }
}

 


免責聲明!

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



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