Example #1
0
        /// <summary>
        /// Метод заполнения массива загадок из файла
        /// </summary>
        /// <param name="fileName">полный путь к файлу</param>
        /// <returns></returns>
        public Riddler[] GetDataBase(string fileName)
        {
            int j = 0;

            string[] database;
            if (File.Exists(fileName))
            {
                database = File.ReadAllLines(fileName);
                if (database.Length % 3 == 0)
                {
                    Riddler[] game = new Riddler[database.Length / 3];
                    for (int i = 0; i < database.Length; i = i + 3)
                    {
                        game[j]          = new Riddler();
                        game[j].question = database[i];
                        game[j].answer   = database[i + 1].Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
                        game[j].comment  = database[i + 2];
                        j++;
                    }
                    return(game);
                }
                else
                {
                    throw new Exception("не корректный формат файла");
                }
            }
            else
            {
                throw new FileNotFoundException();
            }
        }
Example #2
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();
        }
Example #3
0
        /// <summary>
        /// Метод удаления сыгранной загадки
        /// </summary>
        /// <param name="number">индекс сыгранный загадки</param>
        /// <param name="game">массив загадок</param>
        /// <returns></returns>
        static Riddler[] DeleteRiddle(int number, Riddler[] game)
        {
            int j = 0;

            Riddler[] tempgame = new Riddler[(game.Length - 1)];
            for (int i = 0; i < game.Length; i++)
            {
                if (i != number)
                {
                    tempgame[j] = game[i];
                    j++;
                }
            }
            return(tempgame);
        }
Example #4
0
        /// <summary>
        /// Проверка пользовательского ответа на загадку
        /// </summary>
        /// <param name="stage">активная загадка</param>
        /// <returns></returns>
        public bool CheckAnswerUs(Riddler stage)
        {
            string ansUs;
            int    count = 0;

            Console.Write("Ваш ответ?=>");
            ansUs = Console.ReadLine();
            foreach (string el in stage.answer)
            {
                if (el.ToLower() == ansUs.ToLower())
                {
                    Console.WriteLine("И это...");
                    Console.ForegroundColor = ConsoleColor.Yellow;
                    Console.WriteLine($"ПРАВИЛЬНЫЙ ОТВЕТ! \n {stage.comment}\nСписок ответов, считающихся правильными: ");
                    stage.PrintAnswer();
                    PauseAndClear();
                    return(true);
                }
            }
            return(false);
        }