public static Student[][] AllGroups()
        {
            string[] names = { "Alina", "Denis", "Oleg", "Victor", "Elena", "Tamara" };
            Random randomGenerator = new Random();

            Student[][] year = new Student[3][];
            year[0] = new Student[20];
            year[1] = new Student[15];
            year[2] = new Student[10];

            for (int i = 0; i < year.Length; i++)
            {
                for (int j = 0; j < year[i].Length; j++)
                {
                    int firstRating = randomGenerator.Next(5);
                    int secondRating = randomGenerator.Next(5);
                    year[i][j] = new Student(
                        names[randomGenerator.Next(names.Length - 1)],
                        new DateTime(randomGenerator.Next(1988, 2000), randomGenerator.Next(1, 12), randomGenerator.Next(1, 28)),
                        firstRating == 0 ? null : (int?)firstRating,
                        secondRating == 0 ? null : (int?)secondRating
                        );
                    Console.WriteLine(year[i][j]);
                }
            }

            for (int i = 0; i < year.Length; i++)
            {
                //http://stackoverflow.com/questions/12026344/how-to-use-array-sort-to-sort-an-array-of-structs-by-a-specific-element
                Array.Sort<Student>(year[i], (x, y) => x.birthDate.CompareTo(y.birthDate));
            }
            return year;
        }
 public static void GetStudents(Student[][] year)
 {
     int count = 0;
     for (int i = 0; i < year.Length; i++)
     {
         for (int j = 0; j < year[i].Length; j++)
         {
             if (year[i][j].ratingNativeLanguage.HasValue && year[i][j].ratingForeignLanguage.HasValue)
             {
                 count++;
             }
         }
     }
     Tuple<string, int, int>[] attestedStudents = new Tuple<string, int, int>[count];
     count = 0;
     for (int i = 0; i < year.Length; i++)
     {
         for (int j = 0; j < year[i].Length; j++)
         {
             if (year[i][j].ratingNativeLanguage.HasValue && year[i][j].ratingForeignLanguage.HasValue)
             {
                 attestedStudents[count] = Tuple.Create(year[i][j].name, (int)year[i][j].ratingNativeLanguage, (int)year[i][j].ratingForeignLanguage);
                 count++;
             }
         }
     }
     Array.ForEach(attestedStudents, element => Console.WriteLine("Данный студент сдал экзамены {0}", element));
     ListStudents(year);
 }
 public static void ListStudents(Student[][] year)
 {
     bool group1 = Array.TrueForAll(year[0], x => x.ratingNativeLanguage.HasValue && x.ratingForeignLanguage.HasValue);
     bool group2 = Array.TrueForAll(year[1], x => x.ratingNativeLanguage.HasValue && x.ratingForeignLanguage.HasValue);
     bool group3 = Array.TrueForAll(year[2], x => x.ratingNativeLanguage.HasValue && x.ratingForeignLanguage.HasValue);
     Console.WriteLine(group1 ? "Все студенты в группе 1 сдали экзамены" : "Не все студенты в группе 1 сдали экзамены");
     Console.WriteLine(group2 ? "Все студенты в группе 2 сдали экзамены" : "Не все студенты в группе 2 сдали экзамены");
     Console.WriteLine(group3 ? "Все студенты в группе 3 сдали экзамены" : "Не все студенты в группе 3 сдали экзамены");
 }
Exemple #4
0
        public static void GetGroup()
        {
            // спросить количество студентов
            Console.WriteLine("Введите колличество студентов!");
            int groupSize = 0;
            while (!int.TryParse(Console.ReadLine(), out groupSize))
            {
                Console.WriteLine("Введите правильное колличество студентов!");
            }
            Student[] group = new Student[groupSize];
            // спросить имя каждого студента
            for (int i = 0; i < groupSize; i++)
            {
                Console.WriteLine("Введите фамилию, имя и отчество студента!");
                group[i] = new Student(Console.ReadLine());
            }

            // вывести общий список студентов
            for (int i = 0; i < group.Length; i++)
            {
                Console.WriteLine("{0}. {1}", i + 1, group[i].GetName());
            }
        }