Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.08 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.net.URLClassLoader;
  4. import java.net.URLConnection;
  5. import java.sql.SQLOutput;
  6. import java.sql.Struct;
  7. import java.util.*;
  8.  
  9. public class Main {
  10.  
  11.     public static void main(String[] args) {
  12.     Scanner scanner = new Scanner(System.in);
  13.  
  14.     Map<String, List<Double>> studentAverageGrade = new HashMap<>();
  15.  
  16.     int countOfStudents = Integer.parseInt(scanner.nextLine());
  17.  
  18.         for (int i = 0; i < countOfStudents; i++) {
  19.             String studentName = scanner.nextLine();
  20.             String[] studentGrades = scanner.nextLine().split(" ");
  21.             List<Double> inputGrades = new ArrayList<>();
  22.  
  23.             for (int j = 0; j < studentGrades.length; j++) {
  24.                 inputGrades.add(Double.parseDouble(studentGrades[j]));
  25.             }
  26.  
  27.             studentAverageGrade.put(studentName, inputGrades);
  28.         }
  29.  
  30.         printStudentInfo(studentAverageGrade);
  31.  
  32.     }
  33.  
  34.     private static void printStudentInfo(Map<String, List<Double>> studentAverageGrade) {
  35.         for (Map.Entry<String, List<Double>> entry : studentAverageGrade.entrySet()) {
  36.             printStudentName(entry);
  37.             printStudentGrades(entry);
  38.             printStudentAverageGrade(entry);
  39.         }
  40.     }
  41.  
  42.     private static void printStudentAverageGrade(Map.Entry<String, List<Double>> entry) {
  43.         double sumGrade = entry.getValue().stream().mapToDouble(Double::doubleValue).average().getAsDouble();
  44.         System.out.println();
  45.         System.out.println("Average grade: " + String.format("%.2f", sumGrade));
  46.     }
  47.  
  48.     private static void printStudentGrades(Map.Entry<String, List<Double>> entry) {
  49.         List<Double> studentGradesList = entry.getValue();
  50.         System.out.print("Student grades: ");
  51.  
  52.         for (Double grade : studentGradesList) {
  53.             System.out.print(String.format("%.2f", grade) + " ");
  54.         }
  55.     }
  56.  
  57.     private static void printStudentName(Map.Entry<String, List<Double>> entry) {
  58.         String nameOfStudent = entry.getKey();
  59.         System.out.println("Student name: " + nameOfStudent);
  60.     }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement