Denis_Hristov

Comments

Nov 20th, 2021 (edited)
415
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.11 KB | None | 0 0
  1. public class Students_Methods {
  2.     public static Students[] ReadAndSplitFromFile(String File1) throws FileNotFoundException {   //метод с който четем и сплитваме от нашия файл
  3.  
  4.         int counter = 0; //БРОИМ РЕДОВЕТЕ ВЪВ ФАЙЛА
  5.  
  6.         //ЧЕТЕМ ОТ ФАЙЛА
  7.         Scanner myReader = new Scanner(new File(File1), "UTF-8");// Read from file
  8.  
  9.         //ПРЕБРОЯВАМЕ ЗАПИСИТЕ (РЕДОВЕТЕ) ВЪВ ФАЙЛА
  10.         while (myReader.hasNextLine()) {
  11.             counter++;
  12.         }
  13.  
  14.         // СЪЗДАВАМЕ МАСИВ ОТ ОБЕКТИ - КЛАСА ЗА ТЯХ Е В Students.java
  15.         Students[] StudentGroup = new Students[counter];
  16.         counter = 0;
  17.  
  18.  
  19.         // FOR цикъл за попълване на масива с учениците
  20.         while (myReader.hasNextLine()) {
  21.  
  22.             System.out.println("NOW READING FROM FILE FOR EVERY STUDENT [" + counter + "] : ");
  23.  
  24.             // ЧЕТЕМ ЕДИН ПО ЕДИН РЕДОВЕТЕ
  25.             String dataString = myReader.nextLine();
  26.  
  27.             // сплитваме по "," (запетая) и ги слагаме в масив
  28.             String[] splitedData  = dataString.split(" ");
  29.  
  30.             StudentGroup[counter].setNumber(Integer.parseInt(splitedData[0]));    // get from col Number of File1.txt
  31.             StudentGroup[counter].setName(splitedData[1]);      //get from col Name of File1.txt
  32.             StudentGroup[counter].setFamily(splitedData[2]);    //get from col Family of File1.txt
  33.             StudentGroup[counter].setAvgscore(Double.parseDouble(splitedData[3]));  //gеt from col Avgscore of File1.txt
  34.  
  35.             counter++;  //увеличаваме с 1
  36.         }
  37.  
  38.         System.out.println("FINISHING READ FROM FILE !!!");
  39.  
  40.         return StudentGroup;   //връщаме StudentGroup
  41.     }
  42.  
  43.     public static void MakeStatistic(Students[] StudentGroup) {     //метод с който правим статистика на учениците от нашия файл
  44.  
  45.         double GroupAvgScore = 0;     //дефинираме си променлива GroupAvgScore
  46.  
  47.         // print group
  48.         for (Students thisStudent : StudentGroup) // FOR-EACH
  49.         {
  50.             System.out.print("Номер : " + thisStudent.getNumber());          //взимаме номера на ученика
  51.             System.out.print(" Име : " + thisStudent.getName());             //взимаме името на ученика
  52.             System.out.print(" Фамилия : " + thisStudent.getFamily());       //взимаме фамилията на ученика
  53.             System.out.println(" Ср.Успех : " + thisStudent.getAvgscore());  //взимаме среден успех на ученика
  54.         }
  55.  
  56.         // print average score
  57.         for (Students thisStudent : StudentGroup) // FOR-EACH
  58.         {
  59.             GroupAvgScore = GroupAvgScore + thisStudent.getAvgscore();        //пресмятаме оценките на групата
  60.             GroupAvgScore = GroupAvgScore / StudentGroup.length;              //делим общият успех на броя ученици
  61.             System.out.println("AVG SCORE : " + GroupAvgScore);               //принтираме средния успех на групата
  62.         }
  63.  
  64.         // MAX score
  65.         int index = 0;           //дефинираме си променлива index
  66.         double MaxScore = 0;     //дефинираме си променлива MaxScore
  67.  
  68.         for (Students thisStudent : StudentGroup) // FOR-EACH
  69.         {
  70.             if (MaxScore < thisStudent.getAvgscore()) {   //ако MaxScore < средния успех на ученика
  71.                 MaxScore = thisStudent.getAvgscore();     //MaxScore = средния успех на ученика
  72.                 index++;                                  //увеличаваме index с 1
  73.             }
  74.         }
  75.         System.out.println("MAX SCORE : " + MaxScore);                            //принтираме MaxScore
  76.         System.out.print("Номер : " + StudentGroup[index].getNumber());           //принтираме номера на всеки ученик
  77.         System.out.print(" Име : " + StudentGroup[index].getName());              //принтираме името на всеки ученик
  78.         System.out.print(" Фамилия : " + StudentGroup[index].getFamily());        //принтираме фамилията на всеки ученик
  79.         System.out.println(" Ср.Успех : " + StudentGroup[index].getAvgscore());   //принтираме средния успех на всеки ученик
  80.  
  81.  
  82.         // MIN score
  83.         index = 0;              //дефинираме си променлива index
  84.         double MinScore = 0;    //дефинираме си променлива MinScore
  85.  
  86.         for (Students thisStudent : StudentGroup) // FOR-EACH
  87.         {
  88.             if ( MinScore < thisStudent.getAvgscore() ) {     //ако MinScore < средния успех на ученика
  89.                 MinScore = thisStudent.getAvgscore();         //MinScore = средния успех на ученика
  90.                 index++;                                      //увеличаваме index с 1
  91.             }
  92.             System.out.println("MIN SCORE : " + MinScore);                             //принтираме MinScore
  93.             System.out.print("Номер : " + StudentGroup[index].getNumber());            //принтираме номера на всеки ученик
  94.             System.out.print(" Име : " + StudentGroup[index].getName());               //принтираме името на всеки ученик
  95.             System.out.print(" Фамилия : " + StudentGroup[index].getFamily());         //принтираме фамилията на всеки ученик
  96.             System.out.println(" Ср.Успех : " + StudentGroup[index].getAvgscore());    //принтираме средния успех на всеки ученик
  97.  
  98.         }
  99.     }
  100. }
  101.  
Add Comment
Please, Sign In to add comment