某项比赛,共有10个评委打分,统计时,去掉一个最高分和一个最低分,其余8个评委打分的平均值即为最后得分。编程计算选手最后得分。 JAVA
时间: 2024-09-11 20:17:20 浏览: 71
python第二次实验
在Java中,你可以通过数组或列表来存储评委的评分,并使用Collections类来去除最高分和最低分。以下是使用数组的一个简单示例:
```java
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] scores = {85, 90, 92, 94, 96, 97, 98, 99, 100, 100}; // 评委的原始打分
int finalScore = calculateFinalScore(scores);
System.out.println("选手的最终得分为: " + finalScore);
}
public static int calculateFinalScore(int[] scores) {
if (scores.length < 2) {
throw new IllegalArgumentException("至少需要两个分数");
}
Arrays.sort(scores); // 先对数组排序
int highest = scores[scores.length - 1]; // 最高分
int lowest = scores[0]; // 最低分
int sumWithoutMinMax = 0; // 去掉最高和最低后的总分
for (int i = 1; i < scores.length - 1; i++) { // 从第二个元素到倒数第二个元素
sumWithoutMinMax += scores[i];
}
return sumWithoutMinMax / (scores.length - 2); // 返回剩余8个分数的平均值
}
}
```
在这个例子中,`calculateFinalScore`方法首先检查是否有足够的分数,然后对分数数组进行排序,找出最高分和最低分,接着计算并返回剩下的8个分数的平均值。
阅读全文