帮我生成一个JAVA计算竞赛评分,计算规则要求去掉一个最高分和一个最低分,根据剩余的分数求出平均分保留两位小数输出
时间: 2024-09-19 07:01:33 浏览: 41
Java求一个分数数列的前20项之和的实现代码
在Java中,你可以创建一个简单的函数来计算竞赛得分。假设你有一个包含多个评委打分的数组,可以按照以下步骤编写:
```java
import java.util.ArrayList;
import java.util.Collections;
public class ScoreCalculator {
public static double calculateAverageScore(int[] scores) {
// 首先,我们去除最高分和最低分
ArrayList<Integer> adjustedScores = new ArrayList<>();
int min = Collections.min(Arrays.asList(scores));
int max = Collections.max(Arrays.asList(scores));
for (int score : scores) {
if (score != min && score != max) {
adjustedScores.add(score);
}
}
// 然后,计算平均分并四舍五入到两位小数
double sum = 0;
for (int score : adjustedScores) {
sum += score;
}
double average = sum / adjustedScores.size();
return Math.round(average * 100.0) / 100.0; // 保留两位小数
}
public static void main(String[] args) {
int[] scores = {85, 90, 78, 92, 88, 86};
double result = calculateAverageScore(scores);
System.out.println("调整后的平均分为:" + result);
}
}
```
在这个例子中,`calculateAverageScore`方法首先找出最高分和最低分,然后从原始得分数组中移除它们,再计算剩余分数的平均值,并四舍五入到两位小数。
阅读全文