Пример #1
0
        static void Main(string[] args)
        {
            #region Инициализация объектов класса заданий
            Task1     task1 = new Task1();
            MyMessege task2 = new MyMessege();
            MyMessege task3 = new MyMessege();
            USE_Task4 task4 = new USE_Task4();
            Riddler   task5 = new Riddler();
            #endregion

            string answer = "0";;
            Console.WriteLine("Доброго время суток, пользователь. Добро пожаловать в домашнюю работу к уроку 5 курса Основы C#");
            string fileName;
            do
            {
                Console.Write("Выбери задание,выполнение которое желаешь просмотреть:\n1.Корректность ввода логина и пароля, относительно шаблона\n2.Работа класса Messege\n3.Проверка 2-ух строк на предмет перестановочности символов\n4.Задача ЕГЭ\n5.Занимательные загадочки!)\nДля выхода введи 0\nТвой ответ=>");
                if ((answer = Console.ReadLine()) == "1")
                {
                    fileName = AppDomain.CurrentDomain.BaseDirectory + "Account.txt";
                    task1.RunTask1(fileName);
                }
                else
                if (answer == "2")
                {
                    fileName = AppDomain.CurrentDomain.BaseDirectory + "ForMyMessege.txt";
                    task2.RunTask2(fileName);
                }
                else
                if (answer == "3")
                {
                    task3.RunTask3();
                }
                else
                if (answer == "4")
                {
                    fileName = AppDomain.CurrentDomain.BaseDirectory + "BaseStudent.txt";
                    task4.RunTask4(fileName);
                }
                else
                if (answer == "5")
                {
                    fileName = AppDomain.CurrentDomain.BaseDirectory + "Riddles.txt";
                    task5.RunTask5(fileName);
                }
                else
                if (answer != "0")
                {
                    Console.WriteLine("Вы ввели не корректный номер задания. Повторите ввод.");
                }
            }while (answer != "0");
            Console.WriteLine("До встречи на домашних работах к следующим урокам.");
            Console.ReadKey();
        }
        /// <summary>
        /// Метод запуска 2-го задания
        /// </summary>
        /// <param name="fileName"></param>
        public void RunTask2(string fileName)
        {
            string    answertask2;
            string    file   = AppDomain.CurrentDomain.BaseDirectory + "ForMyMessege.txt";
            MyMessege newmes = new MyMessege("", file);

            do
            {
                Console.WriteLine("Задание 2 к уроку 5.\nВыберите действие, которое хотите сделать с сообщением:\n1) Вывести только те слова сообщения, которые содержат не более n букв.\n2. Удалить из сообщения все слова, которые заканчиваются на заданный символ.\n3 and 4. Найти самое длинное слово сообщения.\nЧтобы выйти нажмите 0.");
                answertask2 = CheckAnswerTask2(newmes);
            }while (answertask2 != "0");
        }
        public void RunTask3()
        {
            string answertask3;

            do
            {
                Console.WriteLine("Задание 2 к уроку 5.\nДоброго времени суток, пользователь.\nДанная программа проверит, является ли 1 строка перестановкой букв другой.");
                Console.Write("Введи первую строку=>");
                MyMessege first = new MyMessege(Console.ReadLine());
                Console.Write("Введи вторую строку=>");
                string str = Console.ReadLine();
                first.IsMyReverseString1(str);
                first.IsMyReverseString2(str);
                Console.WriteLine("Чтобы выйти - вводи 0\nЧтобы продолжить с новыми строками - вводи что-то другое. Не 0!)");
                answertask3 = Console.ReadLine();
            }while (answertask3 != "0");
            Console.WriteLine("До встречи на новых работах!)");
            PauseAndClear();
        }
        /// <summary>
        /// Метод проверки выбора действия с текстом для задания 2
        /// </summary>
        /// <param name="newmes"></param>
        /// <returns></returns>
        static string CheckAnswerTask2(MyMessege newmes)
        {
            Console.Write("Итак, твой ответ =>");
            string answer = Console.ReadLine();

            if (answer == "1")
            {
                Console.WriteLine($"Дан следующий текст: {newmes.mes.ToString()}\n------------------------------------");
                do
                {
                    Console.Write("Введите число, и программа выведет все слова сообщения, которые имеют меньше или такое же количество букв=>");
                    if (int.TryParse(Console.ReadLine(), out int number))
                    {
                        newmes.PrintRangeWord(number);
                        break;
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("Вы ввели не корректное число! Повторите ввод!");
                        Console.ResetColor();
                    }
                }while (true);

                newmes.PauseAndClear();
            }
            else
            if (answer == "2")
            {
                Console.WriteLine($"---------------------------\nДан следующий текст: {newmes.mes.ToString()}\n------------------------------------");
                do
                {
                    Console.Write("Введите символ, и программа удалит все слова текста,которые заканчиваются на данный символ=> ");
                    if (Char.TryParse(Console.ReadLine(), out char end))
                    {
                        newmes.TrimMyMessege(end);
                        break;
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("Вы ввели не корректный символ! Повторите ввод!");
                        Console.ResetColor();
                    }
                }while (true);

                newmes.PauseAndClear();
            }
            else
            if (answer == "3" || answer == "4")
            {
                Console.WriteLine($"---------------------------\nДан следующий текст: {newmes.mes.ToString()}\n------------------------------------");
                newmes.PrintLongestWard(out StringBuilder longestmes);
                newmes.PauseAndClear();
            }
            else
            if (answer == "0")
            {
                Console.WriteLine("Спасибо за внимание.");
            }
            else
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Вы ввели не корректный номер действия! Повторите ввод!");
                Console.ResetColor();
            }
            return(answer);
        }