示例#1
0
        static void Main(string[] args)
        {
            // Список футболистов, фильтр
            List <Football_players> football_Players = new List <Football_players>();

            Football_players.filter = new Football_players_filter();
            string ReadCh;

            // Главное меню
            do
            {
                // Вывод главного меню
                Console.WriteLine("Меню:");
                Console.WriteLine("1. Ввод нового футболиста");
                Console.WriteLine("2. Вывод футболистов");
                Console.WriteLine("3. Ввод значений фильтра");
                Console.WriteLine("4. Вывод отфильтрованного списка футболистов");

                // Пользватель выбирает один пункт из главного меню
                ReadCh = Console.ReadLine();

                // Обработка выбора пользователя
                switch (ReadCh)
                {
                case "1":     // Ввод нового футолиста
                    Console.Clear();
                    Console.WriteLine("Ввод нового футболиста: \n");
                    Football_players.AddNewElement(football_Players);
                    break;

                case "2":     // Вывод футболистов
                    Console.Clear();
                    Console.WriteLine("Вывод полного списка футболистов: ");
                    Football_players.OutFullList(football_Players);
                    break;

                case "3":     // Ввод значений фильтра
                    Console.Clear();
                    Console.WriteLine("Ввод фильтра: ");
                    Football_players.filter.AddFilter();
                    break;

                case "4":     // Вывод отфильтрованного списка
                    Console.Clear();
                    Console.WriteLine("Вывод отфильтрованного списка футболистов: ");
                    Football_players.OutFilterList(football_Players);
                    break;

                default:     // Выход из программы
                    Environment.Exit(0);
                    break;
                }

                // Очистка экрана
                Console.ReadKey();
                Console.Clear();
            } while (true);
        }
示例#2
0
 /// <summary>
 /// Вывод одного футболиста
 /// </summary>
 /// <param name="player">Футболист</param>
 public static void OutFootballPlayer(Football_players player)
 {
     Console.Write("|{0,-15}|", player.Surname);
     Console.Write("|{0,-14}|", player.Birthday.ToString("MM/dd/yyyy"));
     Console.Write("|{0,-22}|", player.PlaceOfBorn);
     Console.Write("|{0,-14}|", player.Role);
     Console.Write("|{0,-14}|", player.CountGames);
     Console.Write("|{0,-22}|", player.CountYellowLabel);
     Console.Write("\n");
 }
示例#3
0
            /// <summary>
            /// Добавление нового футболиста
            /// </summary>
            /// <param name="players">Список футболистов</param>
            public static void AddNewElement(List <Football_players> players)
            {
                // Новый футболист
                Football_players player = new Football_players();

                // Ввод фамилии
                Console.WriteLine("Введите фамилию футболиста: ");
                player.Surname = Console.ReadLine();
                while (!IsRussianStr(player.Surname))
                {
                    Console.WriteLine("Фамилия может содержать только буквы русского алфавита. Повторите ввод:");
                    player.Surname = Console.ReadLine();
                }

                // Ввод даты рождения
                Console.WriteLine("Введите дату рождения в формате dd.mm.yyyy: ");
                string str = Console.ReadLine();

                do
                {
                    try
                    {
                        DateTime date = Convert.ToDateTime(str);
                        TimeSpan dt   = DateTime.Now.Subtract(date);
                        int      year = new DateTime(dt.Ticks).Year - 1;
                        if (year < 16 || year > 45)
                        {
                            Console.WriteLine("Футболист должен быть старше 16 и младше 45. Повтрите ввод: ");
                            str = Console.ReadLine();
                        }
                        player.Birthday = date;
                    }
                    catch
                    {
                        Console.WriteLine("Неправильно ввели дату рождения. Повтрите ввод: ");
                        str = Console.ReadLine();
                    }
                } while (!Regex.IsMatch(str, @"\d{2}.\d{2}.\d{4}"));

                // Ввод места рождения
                Console.WriteLine("Введите место рождения: ");
                player.PlaceOfBorn = Console.ReadLine();
                while (!IsRussianStr(player.PlaceOfBorn))
                {
                    Console.WriteLine("Место рождения может содержать только буквы русского алфавита. Повторите ввод:");
                    player.PlaceOfBorn = Console.ReadLine();
                }

                // Ввод амплуа
                Console.WriteLine("Введите амплуа [1 - вратарь, 2 - защитник, 3 - полузащитник, 4 - нападающий]");
                int  amplua;
                bool isNum;

                do
                {
                    // Проверяем, является ли числом вводимая строка
                    isNum = int.TryParse(Console.ReadLine(), out amplua);
                    switch (amplua)
                    {
                    case 1:     // Вратарь
                        player.Role = Roles.Goalkeeper;
                        break;

                    case 2:     // Защитник
                        player.Role = Roles.Quarterback;
                        break;

                    case 3:     // Полузащитник
                        player.Role = Roles.Halfback;
                        break;

                    case 4:     // Нападающий
                        player.Role = Roles.Forward;
                        break;

                    default:
                        Console.WriteLine("Неправильно ввели амплуа.");
                        break;
                    }
                } while (!isNum);

                // Ввод количества игр
                Console.WriteLine("Введите количество игр");
                bool ok = false;

                while (!ok)
                {
                    try
                    {
                        uint countGames = Convert.ToUInt32(Console.ReadLine());
                        player.CountGames = countGames;
                        ok = true;
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("Количество игр не может быть отрицательным. Повторите ввод: ");
                    }
                }

                // Ввод количества жёлтых карточек
                Console.WriteLine("Введите количество жёлтых карточек");
                ok = false;
                while (!ok)
                {
                    try
                    {
                        uint countYellowLabel = Convert.ToUInt32(Console.ReadLine());
                        player.CountYellowLabel = countYellowLabel;
                        ok = true;
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("Количество игр не может быть отрицательным. Повторите ввод: ");
                    }
                }

                // Добавление нового футолиста
                players.Add(player);
                Console.WriteLine("Футболист добавлен! Нажмите enter для возврата в меню");
            }