Java 实现评委打分,有 6 个评委给比赛选手打分,计算选手的最终得分。
在某个比赛中,有 6 个评委为参赛的选手打分,分数为 0-100 的 随机整数 分值。 选手的最后得分为:除去最高分和最低分后的 4 个评委分值的平均值 (不考虑 小数 部分)。
import java.util.Random;
public class MethodDemo10 {
public static void main(String[] args) {
System.out.println("嗨客网(www.haicoder.net)\n");
// 创建数组
int[] arr = new int [6];
// 调用方法存随机数到数组中
grade(arr);
// 打印所有成绩
print(arr);
// 计算最终成绩
int avg = average(arr);
// 打印最终成绩
System.out.println("最终成绩为:" + avg);
}
// 定义打印数组方法
public static void print(int [] arr){
System.out.print("评委打的分数:[");
for(int i = 0;i < arr.length;i++){
System.out.print(i == arr.length - 1 ? arr[i] : arr[i] + ", ");
}
System.out.println("]");
}
// 定义产生随机数方法
public static void grade(int [] arr){
// 创建一个随机数对象,用于生产0-100的随机分数
Random random = new Random();
// 创建随机数
for(int i = 0; i < arr.length;i++){
// 创建随机类
arr[i] = random.nextInt(101);
}
}
// 定义计算最终成绩的方法
public static int average(int [] arr){
// 定义三个变量存储最大值、最小值、总和
int max = arr[0];
int min = arr[0];
int sum = 0;
for(int i = 0;i < arr.length;i++){
int data = arr[i];
if(data > max) max = data;
if(data < min) min = data;
// 计算总和
sum += data;
}
int avg = (sum - max - min)/(arr.length - 2);
return avg;
}
}
运行结果如下图:
以上案例计算出比赛选手最终成绩。