java语言的科学与艺术-编程练习11.1

//读入7名裁判所打的分数,计算去掉最高分和最低分之后剩余的5个分数的平均值。
import acm.program.*;
public class score extends ConsoleProgram{
    public void run(){
        score = new int[NUM];
        int sum = 0;
        double average = 0;
        for (int i = 0; i < NUM; i++) {
            score[i] = readInt("Input the score " + i + " : ");
            sum += score[i];
        }
        int max = findMax(score);
        int min = findMin(score);
        average = (double)(sum - max - min) / (NUM -2);
        println(" The average score is " + average + ".");
    }
    private int findMax(int[] score) {
        int j =  score[0];
        for(int i = 0; i < NUM; i++) {
            if(j < score[i]) j = score[i];
        }
        return j;
    }
    private int findMin(int[] score) {
        int j = score[0];
        for(int i = 0; i < NUM; i++) {
            if(j > score[i]) j = score[i];
        }
        return j;
    }
    //constant
    private static final int NUM = 7; // 裁判的人数
    private int[] score; //记录分数
}

 

posted on 2013-01-03 14:35  mybluecode  阅读(152)  评论(0编辑  收藏  举报