コード例 #1
0
        public void InteractWithObshaga(Obshaga build)
        {
            ConsoleKeyInfo key = new ConsoleKeyInfo();
            int            floor;
            int            room;

            while (key.Key != ConsoleKey.D0)
            {
                Console.WriteLine("Нажміть 1 для перегляду загальної інформації гуртожитку..");
                Console.WriteLine("Нажміть 2 для перегляду інформації кімнати..");
                Console.WriteLine("Нажміть 3, щоб виселити студента..");
                Console.WriteLine("Нажміть 0 для виходу..");

                key = Console.ReadKey(true);
                switch (key.Key)
                {
                case ConsoleKey.D1:
                    Console.Clear();
                    build.GetObshagaInfo();

                    key = Console.ReadKey(true);
                    Console.Clear();
                    switch (key.Key)
                    {
                    case ConsoleKey.D1:
                        Console.Clear();
                        build.GetRoomInfo(out floor, out room);

                        key = Console.ReadKey(true);
                        Console.Clear();
                        switch (key.Key)
                        {
                        case ConsoleKey.D1:
                            Console.Clear();
                            build.GetStudentsInfo(floor, room);

                            key = Console.ReadKey(true);
                            Console.Clear();
                            break;
                        }
                        break;

                    case ConsoleKey.D2:
                        break;
                    }
                    break;

                case ConsoleKey.D2:
                    Console.Clear();
                    build.GetRoomInfo(out floor, out room);

                    key = Console.ReadKey(true);
                    Console.Clear();
                    switch (key.Key)
                    {
                    case ConsoleKey.D1:
                        Console.Clear();
                        build.GetStudentsInfo(floor, room);

                        key = Console.ReadKey(true);
                        Console.Clear();
                        break;
                    }
                    break;

                case ConsoleKey.D3:
                    Console.Clear();
                    build.FuckStudent(out floor, out room);
                    break;
                }
            }
        }
コード例 #2
0
        public void BuildObshaga()
        {
            Console.WriteLine("Створи власний гуртожиток..");

            string name;

            do
            {
                Console.WriteLine("Введіть ім'я гуртожитку: ");
                name = Console.ReadLine();
            } while (string.IsNullOrEmpty(name) || string.IsNullOrWhiteSpace(name));

            string komendaName;

            do
            {
                Console.WriteLine("Введіть ім'я коменданта: ");
                komendaName = Console.ReadLine();
            } while (string.IsNullOrEmpty(komendaName) || string.IsNullOrWhiteSpace(komendaName));

            int    floors = -1;
            string floorsStr;

            do
            {
                Console.WriteLine("Введіть кількість поверхів (1 - N): ");
                floorsStr = Console.ReadLine();
                if (string.IsNullOrEmpty(floorsStr) || string.IsNullOrWhiteSpace(floorsStr))
                {
                    continue;
                }
                floors = Convert.ToInt32(floorsStr);
            } while (floors <= 0);

            int    roomPerFloor = -1;
            string roomPerFloorStr;

            do
            {
                Console.WriteLine("Введіть кількість кімнат на поверх (10 - N): ");
                roomPerFloorStr = Console.ReadLine();
                if (string.IsNullOrEmpty(roomPerFloorStr) || string.IsNullOrWhiteSpace(roomPerFloorStr))
                {
                    continue;
                }
                roomPerFloor = Convert.ToInt32(roomPerFloorStr);
            } while (roomPerFloor < 10);

            int    roomCapacity = -1;
            string roomCapacityStr;

            do
            {
                Console.WriteLine("Введіть максимальну вмістимість кімнати (1 - N): ");
                roomCapacityStr = Console.ReadLine();
                if (string.IsNullOrEmpty(roomCapacityStr) || string.IsNullOrWhiteSpace(roomCapacityStr))
                {
                    continue;
                }
                roomCapacity = Convert.ToInt32(roomCapacityStr);
            } while (roomCapacity < 1);

            Obshaga build = new Obshaga(roomCapacity, roomPerFloor, floors, name, komendaName);

            buildings.Add(build);

            Console.Clear();

            Console.WriteLine("Поселення жильців...");
            build.Settle();

            InteractWithObshaga(build);
        }