Vla_DOS

Untitled

Mar 15th, 2022 (edited)
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.90 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3.  
  4. namespace ClassroomDesign
  5. {
  6.     public class Student
  7.     {
  8.         // Свойство - ім'я
  9.         public string FirstName { get; set; }
  10.         // Свойство - прізвище
  11.         public string LastName { get; set; }
  12.         // Свойство - назва класу
  13.         public string ClassName { get; set; }
  14.     }
  15.     class Program
  16.     {
  17.         // Метод додавання об'єктів класу Student до List (Список), приймає 2 параметра - список студентів і їх кількість
  18.         public static void InputList(List<Student> students, int n)
  19.         {
  20.             for (int i = 0; i < n; i++)
  21.             {
  22.                 var student = new Student(); // Ініціалізуємо екземпляр класу
  23.                 Console.Write("Введiть iм'я: ");
  24.                 student.FirstName = Console.ReadLine(); // Записуємо значення в свойство
  25.  
  26.                 Console.Write("Введiть прiзвище: ");
  27.                 student.LastName = Console.ReadLine();
  28.  
  29.                 Console.Write("Введiть назву класу: ");
  30.                 student.ClassName = Console.ReadLine();
  31.  
  32.                 Console.WriteLine();
  33.                 students.Add(student); // Додаємо до списку об'єкт класу (оскільки в еас цикл, кожну ітерацію буде створюватись новий екземпляр класу, туди записуватись дані і додаватись в список)
  34.             }
  35.         }
  36.         // Статичний метод для читання списку
  37.         public static void OutputList(List<Student> students)
  38.         {
  39.             // Через цикл foreach виводимо дані в консолі
  40.             foreach (var i in students)
  41.                 Console.WriteLine($" Iм'я: {i.FirstName}. Прiзвище: {i.LastName}. Назва класу: {i.ClassName}.\n");
  42.         }
  43.         // Статичний метод для перевірки, чи в списку є однакові прізвища
  44.         public static bool WhetherTheSameSurnames(List<Student> students)
  45.         {
  46.             for (int i = 0; i < students.Count; i++)
  47.                 for (int j = students.Count; j > i + 1; j--)
  48.                 {
  49.                     if (students[i].LastName == students[j - 1].LastName)
  50.                         return true;
  51.                 }
  52.             return false;
  53.         }
  54.         static void Main(string[] args)
  55.         {
  56.             // Ініціалізуємо однозв'язний список
  57.             var stutlist = new List<Student>();
  58.             Console.Write("Вкажiть кiлькiсть учнiв: ");
  59.             try
  60.             {
  61.                 int n = int.Parse(Console.ReadLine()); // Вводимо кількість учнів
  62.                 InputList(stutlist, n); // Оголошуємо методи
  63.                 OutputList(stutlist);
  64.  
  65.                 // Перевірка, якщо метод вертає true, значить є учні з однаковим прiзвищем, інакше false, їх немає
  66.                 if (WhetherTheSameSurnames(stutlist))
  67.                     Console.WriteLine("\n В школi Є учнi з однаковим прiзвищем!");
  68.                 else
  69.                     Console.WriteLine("\n В школi НЕМАЄ учнiв з однаковим прiзвищем!");
  70.             }
  71.             catch (Exception ex)
  72.             {
  73.                 Console.WriteLine(ex.Message); // Так званий, обработчик исключений, виводить на екран, інформацію, про помилку, якщо вона виникла
  74.             }
  75.             Console.ReadKey();
  76.         }
  77.     }
  78. }
Advertisement
Add Comment
Please, Sign In to add comment