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); } }
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(); } }
public override void Move(Vbr track) { }
public override void ChangeR(Vbr track) { }
public Circle(Vbr value) : base(value) { }
public Square(Vbr value) : base(value) { }
public Triangle(Vbr value) : base(value) { }
public abstract void ChangeR(Vbr track); // изменение радиуса
public abstract void Move(Vbr track);
public Shape(Vbr value) { x = value.x; y = value.y; r = value.r; }