Java初学者作业——编写JAVA程序,计算跳水运动员本次动作的最终得分。

简介: Java初学者作业——编写JAVA程序,计算跳水运动员本次动作的最终得分。

需求说明:


编写JAVA程序,计算跳水运动员本次动作的最终得分。

规则如下:

在跳水比赛中,共有六位裁判对运动员所完成的动作进行评分,每位裁判的评分在0~10之间,运动员最终的得分规则为:在六位裁判的评分中去掉一个最高分和一个最低分,其余评分之和即为运动员本次动作的最终得分。


56.png


实现思路:


定义数组scores,存储所有裁判给出的评分。

定义变量max、min,用于存储最高分和最低分。

定义变量sum,用于存储所有裁判评分之和。

使用for循环实现数组scores的初始化。

使用求最大值和最小值的算法,计算评分中的最高分和最低分,并给变量max和min赋值。

根据运动员最终得分规则,使用循环结构进行所有评分的累加,并减去最高分和最低分,获取运动员最终得分。


实现代码:

使用 Arrays.sort(scores);排序判断最大值最小值,的方法


import java.util.Arrays;
import java.util.Scanner;
public class GetScoresDemo {
  public static void main(String[] args) {
    System.out.println("请输入6位裁判给出的得分:");
    Scanner sc = new Scanner(System.in);
    //定义数组,储蓄6位裁判给出的分数
    double[] scores = new double[6];
    //通过循环接收用户输入的值(裁判给出的分数)
    for (int i = 0; i < scores.length; i++) {
      scores[i] = sc.nextDouble();
    }
    Arrays.sort(scores);//进行排序
    double max = scores.length-1;//最高分
    double min = scores[0];//最低分
    double sum = 0;//最终得分
    //省略第一个下标和最后一个下标进行累加求和
    for (int i = 1; i < scores.length-1; i++) {
      sum +=scores[i];
    }
    //所有的数值都得到,进行格式化输出
    System.out.printf("去掉一个最高分:%.2f,一个最低分:%.2f\n",max,min);
    System.out.printf("最终得分:%.2f",sum);
  }
}

定义一个数,进行比较判断最大值最小值的方法:


import java.util.Arrays;
import java.util.Scanner;
public class GetScoresDemo {
  public static void main(String[] args) {
    System.out.println("请输入6位裁判给出的得分:");
    Scanner sc = new Scanner(System.in);
    //定义数组,储蓄6位裁判给出的分数
    double[] scores = new double[6];
    double max,min;//最高分,最低分
    double sum = 0;//最终得分
    //通过循环接收用户输入的值(裁判给出的分数)
    for (int i = 0; i < scores.length; i++) {
      scores[i] = sc.nextDouble();
    }
    //求最低分和最高分
    max = scores[0];//设最高分为第一个下标
    min = scores[0];//设最低分为第一个下标
    for (int i = 0; i < scores.length; i++) {
      if(max < scores[i])
        max = scores[i];
      if(min > scores[i])
        min = scores[i];
    }
    //for循环累加求和
    for (double item : scores) {
      sum += item;
    }
    sum = sum - max - min;
    //所有的数值都得到,进行格式化输出
    System.out.printf("去掉一个最高分:%.2f,一个最低分:%.2f\n",max,min);
    System.out.printf("最终得分:%.2f",sum);
  }
}


相关文章
|
1月前
|
安全 Java
Java异常处理:程序世界的“交通规则
Java异常处理:程序世界的“交通规则
298 98
|
2月前
|
Java
Java基础学习day08-作业
本作业涵盖Java中Lambda表达式的应用,包括Runnable与Comparator接口的简化实现、自定义函数式接口NumberProcessor进行加减乘及最大值操作,以及通过IntProcessor处理整数数组,实现遍历、平方和奇偶判断等功能,强化函数式编程实践。
66 5
|
2月前
|
Java
Java基础学习day07-作业
本作业包含六个Java编程案例:1)动物类继承与多态;2)加油卡支付系统;3)员工管理类设计;4)学生信息统计接口;5)USB设备控制;6)家电智能控制。综合运用抽象类、接口、继承、多态等面向对象技术,强化Java基础编程能力。
167 3
|
2月前
|
Java
Java基础学习day06-作业
本内容为Java基础学习作业,涵盖两个案例:一是通过Card类及其子类GoldenCard、SilverCard实现加油卡系统,体现封装与继承;二是通过Shape类及子类Circle、Rectangle演示多态与方法重写,强化面向对象编程理解。
70 1
|
2月前
|
Java
Java基础学习day05-作业
本文为Java基础学习第五天作业,通过五个案例练习类与对象的定义、构造方法、set/get方法及成员方法的应用。涵盖女友、学生、教师、手机和电影等类的设计与测试,强化面向对象编程基础。
76 2
|
2月前
|
Java
Java基础学习day04-作业
本作业包含8个Java编程案例,涵盖数组的定义与遍历、求和、最值计算、去极值求平均、元素倍增、二维数组行和计算及查找指定元素等内容,旨在巩固Java基础语法与数组操作技能。
206 1
|
2月前
|
算法 Java
Java基础学习day03-作业
本内容包含多个Java编程案例,涵盖条件判断、循环、数组、随机数生成、素数判断等基础算法练习,适用于巩固Java语法与逻辑思维训练。
122 6
|
2月前
|
Java
Java基础学习day02-作业
本内容包含13个Java编程练习需求,涵盖变量定义、数据类型转换、运算符使用、键盘输入及条件判断等基础语法实践,适合初学者巩固Java核心基础知识。
80 5
|
Java
Java基础学习day01-作业
通过多个Java编程案例,学习变量定义、数据类型使用及控制台输出。涵盖字符串、数值、布尔值等字面量输出,变量赋值与修改,以及实际应用场景如学生信息和商品价格变化的模拟,夯实基础语法掌握。
90 0