9.text--评委打分
黑马 ---- 评委打分
在唱歌比赛中,有 6 名评委给选手打分,分数范围是[0-100]之间的整数。
选手最后的得分为:去掉最高分、最低分后的四个评委的平均分
计算出选手最终得分
方法一:
Scanner s = new Scanner(System.in);
//键盘输入六个评委打分分数,存放在数组中
double[] points = new double[6];
for (int i = 1; i <= points.length; i++) {
System.out.println("请输入第" + i + "位评委的打分:");
points[i-1] = s.nextDouble();
}
//传递实参给形参,定义一个double接受方法传递的数据
double finalScore = getPoint(points);
System.out.println("最终的分数是:" + finalScore);
s.close();
}
//定义方法:去掉最高分、最低分,后计算平均分,并返回主函数
public static double getPoint(double[] nums){
//通过for循环比较数组中元素,得出最大值、最小值并存放
double max = nums[0];
for (int i = 1; i < nums.length; i++) { //求最大值
if(nums[i] > max){
max = nums[i];
}
}
double min = nums[0];
for (int i = 1; i < nums.length; i++) { //求最小值
if(nums[i] < min){
min = nums[i];
}
}
//遍历数组,去掉最高、最低并计算平均分
double score = 0;
for (int i = 0; i < nums.length; i++) {
if(nums[i] != max && nums[i] != min){
score += nums[i];
}
}
score = score / 4;
return score;
}
方法二:
//接收方法中输入的数组
double[] score = getScore();
//传递数组给方法,并接收方法中求出的最大值
double max = getMax(score);
//传递数组给方法,并接收方法中求出的最小值
double min = getMin(score);
//传递数组给方法,并接收方法中求出的总和
double sum = getSum(score);
//求平均数
double finalScore = (sum-max-min) / 4;
System.out.println("这位选手的最终成绩是:" + finalScore);
}
//录入成绩
public static double[] getScore(){
double[]sc = new double[6];
Scanner s = new Scanner(System.in);
for (int i = 1; i <= sc.length; ) {
System.out.println("请输入第" + i + "位评委的打分:");
double scores = s.nextDouble();
if(scores >= 0 && scores <= 100){
sc[i-1] = scores;
i++;
}else {
System.out.println("输入成绩有误!0-100!");
}
}
s.close();
return sc;
}
//求最大值
public static double getMax(double[] score){
double max = score[0];
for (int i = 1; i < score.length; i++) { //求最大值
if(score[i] > max){
max = score[i];
}
}
return max;
}
//求最小值
public static double getMin(double[] score){
double min = score[0];
for (int i = 1; i < score.length; i++) { //求最大值
if(score[i] > min){
min = score[i];
}
}
return min;
}
//求总和
public static double getSum(double[] score){
double sum = 0;
for (int i = 0; i < score.length; i++) {
sum += score[i];
}
return sum;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人