输入若干考试分数,以输入-1结束;
输出均分,以及大于均分的成绩。
3条回答 默认 最新
- Pluto_/ 2022-03-05 15:25关注
望采纳
public class Test { public static void main(String[] args) { List<Integer> list = new ArrayList<>(); while (true) { int input; Scanner scanner = new Scanner(System.in); System.out.println("请输入分数,以输入-1结束"); input = scanner.nextInt(); if (input == -1) { break; } list.add(input); } int size = list.size(); int sum = 0; for (int i = 0; i < size; i++) { sum += list.get(i); } BigDecimal avg = divide(sum, size); System.out.println("平均分数是:" + avg); StringBuilder stringBuilder = new StringBuilder(); for (int i = 0; i < size; i++) { Integer integer = list.get(i); if (integer > avg.doubleValue()) { stringBuilder.append(integer); if (i < size - 1) { stringBuilder.append(","); } } } if (stringBuilder.length() > 0) { System.out.println("大于平均分数的有:" + stringBuilder.toString()); } } /** * @param divisor 除数 * @param dividend 被除数 * @return */ public static BigDecimal divide(int divisor, int dividend) { BigDecimal a = new BigDecimal(divisor); BigDecimal b = new BigDecimal(dividend); return a.divide(b, 4, BigDecimal.ROUND_HALF_UP); } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥30 vmware exsi重置后登不上
- ¥15 易盾点选的cb参数怎么解啊
- ¥15 MATLAB运行显示错误,如何解决?
- ¥15 c++头文件不能识别CDialog
- ¥15 Excel发现不可读取的内容
- ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
- ¥20 yolov5自定义Prune报错,如何解决?
- ¥15 电磁场的matlab仿真
- ¥15 mars2d在vue3中的引入问题
- ¥50 h5唤醒支付宝并跳转至向小荷包转账界面