时间:2021-05-19
需求
键盘输入五名学生信息并录入list集合;
输出每个学生的信息,计算并输出这五个学生Java语言成绩的平均值;
计算并输出他们Java语言成绩的最大值和最小值。
思路
用Scanner 键盘输入
用for循环依次录入学生信息
用for循环输出学生信息
用for循环拿出学生成绩并求出成绩平均分
代码
补充知识:java 计算平均值,去除不合理的数据
我就废话不多说了,大家还是直接看代码吧~
package com.ine.tool;import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * 计算平均值,去除不合理的数据 * * @author Ro * */public class AverageTool{ /** * 主方法 */ public static int getAverage(String str_int_arr) { int[] int_arr = stringToIntWhitSort(str_int_arr.split(",")); if (1 < int_arr.length) { return getAverageByGoodList(getGoodListByBaseList(getBaseListByIntArray(int_arr))); } return Integer.parseInt(str_int_arr); } /** * 将String数组转换为int数组 */ private static int[] stringToIntWhitSort(String[] arrs) { int[] ints = new int[arrs.length]; for (int i = 0; i < arrs.length; i++) { ints[i] = Integer.parseInt(arrs[i]); } Arrays.sort(ints); System.out.println("ints:" + Arrays.toString(ints)); return ints; } /** * 将int数组根据计算的基准值按块分离 */ private static List<List<Integer>> getBaseListByIntArray(int[] int_arr) { List<List<Integer>> list = new ArrayList<List<Integer>>(); list.add(new ArrayList<Integer>()); int list_index = 0; int average_flag = 0; int sum_temp = 0; for (int i : int_arr) { sum_temp += i; } average_flag = sum_temp / int_arr.length; System.out.println("average_flag:" + average_flag); for (int i = 0; i < int_arr.length - 1; i++) { if (average_flag >= Math.abs(int_arr[i] - int_arr[i + 1])) { list.get(list_index).add(int_arr[i]); } else { list.get(list_index++).add(int_arr[i]); list.add(new ArrayList<Integer>()); } if ((i + 2) == int_arr.length) { list.get(list_index).add(int_arr[i + 1]); } } System.out.println("getBaseListByIntArray:" + list.toString()); return list; } /** * 筛选留下数据最多的块 */ private static List<List<Integer>> getGoodListByBaseList( List<List<Integer>> list) { if (1 < list.size()) for (int i = 1; i < list.size(); i++) { if (list.get(0).size() != list.get(i).size()) { if (list.get(0).size() < list.get(i).size()) { list.remove(0); } else { list.remove(i); } i--; } } System.out.println("getGoodListByBaseList:" + list.toString()); return list; } /** * 将块计算平均值,如果数据大于两位,则个位四舍五入 */ private static int getAverageByGoodList(List<List<Integer>> good_list) { int average = 0; int sum_temp = 0; int sum_index = 0; for (List<Integer> t_list : good_list) { for (int i : t_list) { sum_temp += i; sum_index += 1; } } average = sum_temp / sum_index; if (10 < average) average = (average + 5) / 10 * 10; return average; }}以上这篇java用list集合存储学生信息并算出成绩平均值操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
效果:事件:当输入完三个文本框后触发blur事件。计算出平均值说明:调用方法计算出平均值,代码:文本框中:复制代码代码如下:JS部分:复制代码代码如下:/***
x上面一横的意思是: 这个符号念做“Xbar”,为求平均值符号。 平均值有,算术平均值,几何平均值,平方平均值,调和平均值,加权平均值等几种。其中以算术平均
某班级期中考试后,需要统计成绩的平均值、区间,以及给出班级内部学生成绩差异的量化标准。我们用Excel来完成这项工作。 某班级期中考试进行后,需要统计成绩
C语言动态数组从键盘读入n个整数,使用动态数组存储所读入的整数,并计算它们的和与平均值分别输出。要求尽可能使用函数实现程序代码。平均值为小数的只保留其整数部分。
如何使用Word输入平均值符号?平均值符号大家应该都熟悉,今天就和小编一起来学习使用Word输入平均值符号的方法吧。软件名称:office2019专业增强版激活