这是作业:
在许多奥林匹克运动中,运动员由一组评委给予分数。分数范围从0.0(可怕)到10.0(完美)。为了确保公平,最高和最低分数被取消,剩下的分数被平均以产生运动员的总分。
按此顺序询问用户以下信息:
面板上的评委人数(整数)。 每位法官给出的分数,一个接一个(实数)。 计算除最高和最低(实数)之外的所有分数的平均值。如果两个或多个评委给出相同的最低分,则只应丢弃一个(同样的原则适用于最高分的关系)。
这是我的代码。
public class Scores {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Enter number of judges.");
int j = IO.readInt();
while (j < 3) {
IO.reportBadInput();
System.out.println("Enter number of judges.");
j = IO.readInt();
}
int count = 0;
double sum = 0;
double highest = 0.0;
double lowest = 10.0;
double score;
double average;
for (count = 0; count < j; count = count + 1) {
System.out.println("Enter score of judge.");
score = IO.readDouble();
while (score > 10.0 || score < 0.0) {
IO.reportBadInput();
System.out.println("Enter score of judge.");
score = IO.readDouble();
}
if (score > highest) {
score = highest;
} else if (score < lowest);
{
score = lowest;
sum = sum + score - highest - lowest;
average = sum / (j - 2);
System.out.println(lowest);
}
}
}
}