Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.net.URLClassLoader;
- import java.net.URLConnection;
- import java.sql.SQLOutput;
- import java.sql.Struct;
- import java.util.*;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- Map<String, List<Double>> studentAverageGrade = new HashMap<>();
- int countOfStudents = Integer.parseInt(scanner.nextLine());
- for (int i = 0; i < countOfStudents; i++) {
- String studentName = scanner.nextLine();
- String[] studentGrades = scanner.nextLine().split(" ");
- List<Double> inputGrades = new ArrayList<>();
- for (int j = 0; j < studentGrades.length; j++) {
- inputGrades.add(Double.parseDouble(studentGrades[j]));
- }
- studentAverageGrade.put(studentName, inputGrades);
- }
- printStudentInfo(studentAverageGrade);
- }
- private static void printStudentInfo(Map<String, List<Double>> studentAverageGrade) {
- for (Map.Entry<String, List<Double>> entry : studentAverageGrade.entrySet()) {
- printStudentName(entry);
- printStudentGrades(entry);
- printStudentAverageGrade(entry);
- }
- }
- private static void printStudentAverageGrade(Map.Entry<String, List<Double>> entry) {
- double sumGrade = entry.getValue().stream().mapToDouble(Double::doubleValue).average().getAsDouble();
- System.out.println();
- System.out.println("Average grade: " + String.format("%.2f", sumGrade));
- }
- private static void printStudentGrades(Map.Entry<String, List<Double>> entry) {
- List<Double> studentGradesList = entry.getValue();
- System.out.print("Student grades: ");
- for (Double grade : studentGradesList) {
- System.out.print(String.format("%.2f", grade) + " ");
- }
- }
- private static void printStudentName(Map.Entry<String, List<Double>> entry) {
- String nameOfStudent = entry.getKey();
- System.out.println("Student name: " + nameOfStudent);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement