예제 #1
0
        public static void Main()
        {
            Console.Title = "Дармограй Артем ИУ5-32Б";
            Rectangle r    = new Rectangle(11, 13);
            Square    s    = new Square(11);
            Circle    c    = new Circle(11.13);
            ArrayList list = new ArrayList();

            list.Add(r);
            list.Add(s);
            list.Add(c);
            Console.WriteLine("Содержимое площади элементов коллекции ArrayList:");
            foreach (Figure f in list)
            {
                Console.WriteLine(f.GetArea());
            }
            List <Figure> listG = new List <Figure>();

            foreach (Figure f in list)
            {
                listG.Add(f);
            }
            listG.Sort();
            Console.WriteLine("Содержимое коллекции List<Figure>:");
            foreach (Figure f in listG)
            {
                Console.WriteLine(f.ToString());
            }
            Matrix <Figure> m = new Matrix <Figure>(1, 2, 3, new Square(0));

            m[0, 0, 0] = r;
            m[0, 1, 0] = new Rectangle(29, 11);
            m[0, 0, 1] = s;
            m[0, 1, 1] = new Square(29);
            m[0, 0, 2] = c;
            m[0, 1, 2] = new Circle(29.11);
            Console.WriteLine(m);
            SimpleStack <Figure> stack = new SimpleStack <Figure>();

            stack.Add(m[0, 0, 0]);
            stack.Pop();
            stack.Add(s);
            stack.Add(c);
        }
예제 #2
0
        static void Main()
        {
            Rectangle rect   = new Rectangle(5, 4);
            Square    square = new Square(5);
            Circle    circle = new Circle(5);

            //ArrayList fl = new ArrayList();
            //fl.Add(circle);
            //fl.Add(rect);
            //fl.Add(square);
            //Console.WriteLine("\nПеред сортировкой:");
            //foreach (var x in fl) Console.WriteLine(x);
            ////сортировка
            //fl.Sort();
            //Console.WriteLine("\nПосле сортировки:");
            //foreach (var x in fl) Console.WriteLine(x);



            //List<GeometricFigure> al = new List<GeometricFigure>();
            //al.Add(circle);
            //al.Add(rect);
            //al.Add(square);
            //Console.WriteLine("\nПеред сортировкой:");
            //foreach (var x in al) Console.WriteLine(x);
            ////сортировка
            //al.Sort();
            //Console.WriteLine("\nПосле сортировки:");
            //foreach (var x in al) Console.WriteLine(x);



            //Console.WriteLine("\nМатрица");
            //Matrix<GeometricFigure> matrix = new Matrix<GeometricFigure>(3, 3, 3,
            //new FigureMatrixCheckEmpty());
            //matrix[0, 0, 1] = rect;
            //matrix[1, 1, 0] = square;
            //matrix[2, 2, 2] = circle;
            //Console.WriteLine(matrix.ToString());



            //SimpleStack<GeometricFigure> stack = new SimpleStack<GeometricFigure>();
            //stack.Push(rect);
            //stack.Push(square);
            //stack.Push(circle);
            ////чтение данных из стека
            //while (stack.Count > 0)
            //{
            //    GeometricFigure f = stack.Pop();
            //    Console.WriteLine(f);
            //}



            bool f = true;

            do
            {
                Console.WriteLine("1 - ArrayList:");
                Console.WriteLine("2 - List<Figure>:");
                Console.WriteLine("3 - SparseMatrix:");
                Console.WriteLine("4 - SimpleStack:");
                Console.WriteLine("5 - Exit");

                int num = Convert.ToInt32(Console.ReadLine());
                if (num <= 0 || num > 5)
                {
                    Console.WriteLine("Повторите ввод пункта от 1 до 5:");
                }
                switch (num)
                {
                case 1:
                    ArrayList fl = new ArrayList();
                    fl.Add(circle);
                    fl.Add(rect);
                    fl.Add(square);
                    Console.WriteLine("\nПеред сортировкой:");
                    foreach (var x in fl)
                    {
                        Console.WriteLine(x);
                    }
                    //сортировка
                    fl.Sort();
                    Console.WriteLine("\nПосле сортировки:");
                    foreach (var x in fl)
                    {
                        Console.WriteLine(x);
                    }
                    break;

                case 2:
                    List <GeometricFigure> al = new List <GeometricFigure>();
                    al.Add(square);
                    al.Add(circle);
                    al.Add(rect);
                    Console.WriteLine("\nПеред сортировкой:");
                    foreach (var x in al)
                    {
                        Console.WriteLine(x);
                    }
                    //сортировка
                    al.Sort();
                    Console.WriteLine("\nПосле сортировки:");
                    foreach (var x in al)
                    {
                        Console.WriteLine(x);
                    }
                    break;

                case 3:
                    Console.WriteLine("\nМатрица");
                    Matrix <GeometricFigure> matrix = new Matrix <GeometricFigure>(3, 3, 3,
                                                                                   new FigureMatrixCheckEmpty());
                    matrix[0, 0, 0] = rect;
                    matrix[1, 1, 1] = square;
                    matrix[2, 2, 2] = circle;
                    Console.WriteLine(matrix.ToString());
                    break;

                case 4:
                    SimpleStack <GeometricFigure> stack = new SimpleStack <GeometricFigure>();
                    stack.Push(rect);
                    stack.Push(circle);
                    stack.Push(square);
                    //чтение данных из стека
                    while (stack.Count > 0)
                    {
                        GeometricFigure s = stack.Pop();
                        Console.WriteLine(f);
                    }
                    break;

                case 5:
                    f = false;
                    break;
                }
            } while (f);
        }