在唱歌比赛中有10个评委为参赛的选手打分分数为0~100分。选手最后得分为:去掉一个最高分和一个最低分后,其余八个分数的平均值。请编写一个程序实现。使用Java实现
时间: 2024-11-15 16:32:20 浏览: 30
Java歌手比赛评委打分-按照设计好的流水线去掉一个最高分和一个最低分计算出平均成绩.docx
在Java中,你可以创建一个简单的类来模拟这个评分过程。这里是一个简化的例子:
```java
import java.util.ArrayList;
import java.util.Collections;
public class SingingCompetition {
public static void main(String[] args) {
ArrayList<Integer> scores = new ArrayList<>();
// 假设我们已经有了10个评委的得分
for (int i = 0; i < 10; i++) {
scores.add(i + 100); // 示例分数,实际比赛中应输入评委给出的具体分数
}
// 排序并移除最高分和最低分
Collections.sort(scores);
scores.remove(scores.size() - 1); // 移除最大值
scores.remove(0); // 移除最小值
// 计算并打印剩余8个分数的平均值
double averageScore = calculateAverage(scores);
System.out.println("选手的最终得分是: " + averageScore);
}
private static double calculateAverage(ArrayList<Integer> scoresList) {
int sum = 0;
for (int score : scoresList) {
sum += score;
}
return (double) sum / scoresList.size();
}
}
```
在这个程序中,首先创建了一个ArrayList来存储10个评委的分数,然后对分数列表进行排序。接着,通过`remove()`方法移除最高分和最低分,再计算剩下的8个分数的平均值。`calculateAverage()`函数用于计算平均值。
运行这个程序后,它将输出选手的最终得分。请注意,这只是一个基础示例,实际应用中需要根据实际情况输入评委的得分数据。如果你有具体的评委分数数据,可以直接替换`scores.add(i + 100)`这一行的内容。
阅读全文