示例#1
0
        int maxIndex, currentIndex = 0, maxSize; // количество элементов, индекс текущего выбраного элемента, размер хранилища
        public Storage(int value)
        {
            maxIndex = value;
            maxSize  = value + value / 5; // предполагалось, что будет всего 5 команд, теоретически не более 20% из них будут командами  добавления элемента
            box      = new Shape [maxSize];
            Vbr rnd = new Vbr();

            for (int i = 0; i < value; i++)
            {
                if (rnd.item == 0)
                {
                    box[i] = new Triangle(rnd);
                }
                else if (rnd.item == 1)
                {
                    box[i] = new Square(rnd);
                }
                else
                {
                    box[i] = new Circle(rnd);
                }
                Thread.Sleep(20);
                rnd = new Vbr();
                Console.WriteLine("Создание {0}-го элемента завершено", i);
            }
        }
示例#2
0
        public void LetsDoSomething(int iterator)
        {
            Vbr rnd = new Vbr();

            for (int i = 0; i < iterator; i++)
            {
                Console.WriteLine();
                Console.WriteLine("{0}-я итерация", i + 1);
                if (rnd.toBe == 0)
                {
                    Console.WriteLine("В хранилище {0} элементов", CheckMaxIndex());
                }
                else if (rnd.toBe == 1)
                {
                    UseAllItem();
                }
                else if (rnd.toBe == 2)
                {
                    UseNextItem();
                }
                else if (rnd.toBe == 3)
                {
                    Random key = new Random();
                    UseCurentItem(key.Next(0, maxIndex));
                }
                else if (rnd.toBe == 4)
                {
                    UseThisItem();
                }
                else if (rnd.toBe == 5)
                {
                    Return();
                }
                else if (rnd.toBe == 6)
                {
                    Next();
                }
                else if (rnd.toBe == 7)
                {
                    Console.WriteLine("Указатель на {0}-м индексе", GetCurrentIndex()); // проверь
                }
                else if (rnd.toBe == 8)
                {
                    Random key = new Random();
                    DeleteItem(key.Next(0, maxIndex));
                }
                else
                {
                    Random key = new Random();
                    CreateItem(key.Next(0, maxIndex), new Circle(rnd));
                }
                Thread.Sleep(20);
                rnd = new Vbr();
            }
        }
示例#3
0
 public override void Move(Vbr track)
 {
 }
示例#4
0
 public override void ChangeR(Vbr track)
 {
 }
示例#5
0
 public Circle(Vbr value) : base(value)
 {
 }
示例#6
0
 public Square(Vbr value) : base(value)
 {
 }
示例#7
0
 public Triangle(Vbr value) : base(value)
 {
 }
示例#8
0
 public abstract void ChangeR(Vbr track); // изменение радиуса
示例#9
0
 public abstract void Move(Vbr track);
示例#10
0
 public Shape(Vbr value)
 {
     x = value.x;
     y = value.y;
     r = value.r;
 }