Esempio n. 1
0
        //декремент
        public static void dec(this MyQueue q)
        {
            int[] arr = q.queue.ToArray();
            for (int i = 0; i < arr.Length; i++)
            {
                arr[i]--;
            }
            Queue <int> q_res = new Queue <int>(arr);

            q.queue = q_res;
            //return new MyQueue(q_res);
        }
Esempio n. 2
0
        public static void Main(string[] args)
        {
            Console.WriteLine("Start testing");
            MyQueue q1 = new MyQueue();

            //проверка пустоты очереди
            if (q1)
            {
                Console.WriteLine("Queue is empty");
            }
            else
            {
                Console.WriteLine("Queue is not empty");
            }
            //добавляем элемент
            q1 = q1 + 1;
            Console.WriteLine("Очередь: " + q1);
            //еще один элемент
            q1 = q1 + 2;
            if (q1)
            {
                Console.WriteLine("Queue is empty");
            }
            else
            {
                Console.WriteLine("Queue is not empty");
            }
            Console.WriteLine("Очередь: " + q1);
            // Неявное приведение к int
            int a = q1;

            Console.WriteLine("Мощность: " + a);
            Console.WriteLine("Последний элемент очереди: " + q1.LastElement());
            // создаем новую очередь
            MyQueue q2 = new MyQueue();

            q2 = q2 + 3;
            q2 = q2 + 6;
            q2 = q2 + 4;
            Console.WriteLine("Очередь 2: " + q2);
            // объединяем очереди с сортировкой по убыванию
            MyQueue q = q1 < q2;

            Console.WriteLine(q.ToString());

            Console.WriteLine("Вложенный класс 1: ");
            MyQueue.Owner owner = new MyQueue.Owner(1, "Анастасия Томко", "Buiok Soset, Inc.");
            Console.WriteLine(owner.getInfo());
            Console.WriteLine("Вложенный класс 2: ");
            MyQueue.MyDate date = new MyQueue.MyDate();
            Console.WriteLine(date.getDate());

            // метод расширения: увеличение в 2 каждого элемента
            q.x2();
            Console.WriteLine("Увеличение общей очереди в 2 раза: " + q);
            // метод расширения: инкремент
            q.inc();
            Console.WriteLine("Инкремент: " + q);
            // метод расширения: декремент
            q.dec();
            Console.WriteLine("Декремент: " + q);
            // метод расширения: сортировка символов в строке
            string s = "iosnfgbasdfadjknv";

            Console.WriteLine("Начальная строка: " + s);
            s = s.sortChar();
            Console.WriteLine("Cтрока после сортировки: " + s);
        }
Esempio n. 3
0
        // хз что такое "индекс первой точки" в очереди, вообще без понятия, этого метода тут нету

        // метод расширение, получение последнего элемента очереди
        public static int LastElement(this MyQueue q)
        {
            return(q.queue.Peek());
        }