2)跳水比赛,8 个评委打分。运动员的成绩是 8 个成绩取掉一个最高分,去掉一个最低分,剩下的 6 个分数的平均分就是最后得分。使用scala一维数组实现如下功能的代码: (1) 请把打最高分的评委和最低分的评委找出来。 2) 找出最佳评委和最差评委。最佳评委就是打分和最后得分最接近的评委。最差评委就是打分和最后得分相差最大的。
时间: 2023-04-06 14:01:07 浏览: 150
比赛评委亮分计算表 去掉最高分和 最低分
1)以下是使用Scala一维数组实现的代码:
val scores = Array(9.0, 8.5, 9.5, 9.0, 8.0, 8.5, 9.0, 9.5)
val maxScore = scores.max
val minScore = scores.min
println("最高分的评委是第" + (scores.indexOf(maxScore) + 1) + "个评委,分数为" + maxScore)
println("最低分的评委是第" + (scores.indexOf(minScore) + 1) + "个评委,分数为" + minScore)
2)以下是找出最佳评委和最差评委的代码:
val avgScore = (scores.sum - maxScore - minScore) / 6
val bestJudge = scores.minBy(score => Math.abs(score - avgScore))
val worstJudge = scores.maxBy(score => Math.abs(score - avgScore))
println("最佳评委是第" + (scores.indexOf(bestJudge) + 1) + "个评委,分数为" + bestJudge)
println("最差评委是第" + (scores.indexOf(worstJudge) + 1) + "个评委,分数为" + worstJudge)
阅读全文