コード例 #1
0
 public MyCollection()
 {
     data = null;
     next = null;
     pred = null;
 }
コード例 #2
0
        public static MyCollection MakeStack(Place place)
        {
            MyCollection stack = new MyCollection(place);

            return(stack);
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: okhaaleksandra/lab_12
        static void Main(string[] args)
        {
            MyCollection <Person> myCol_1 = new MyCollection <Person>();

            myCol_1.ShowCollection();
            Console.WriteLine("Попробуем удалить:");
            myCol_1.Remove(myCol_1[0]);

            Console.WriteLine("Добавим элементы типа Person и Employee:");
            myCol_1.Add(new Person());
            myCol_1.Add(new Person());
            myCol_1.Add(new Employee());
            myCol_1.Add(new Employee());

            SetColor.ReversedBW("\nКоллекция:");
            myCol_1.ShowCollection();


            Console.WriteLine("\nТеперь создадим коллкцию на основе List<Person>:");
            int size = 0;

            Console.WriteLine("Число элементов:");
            List <Person> people = new List <Person>();
            bool          ok     = Int32.TryParse(Console.ReadLine(), out size);

            if (ok)
            {
                for (int i = 0; i < size; i++)
                {
                    people.Add(new Person());
                }
            }
            else
            {
                throw new Exception("Invalid input.");
            }

            MyCollection <Person> myCol_2 = new MyCollection <Person>(people);

            SetColor.ReversedBW("Коллекция");
            myCol_2.ShowCollection();

            Employee emp = new Employee("Дроздов Н.В.", 40, "бухгалтер", "финансовый отдел");

            Console.WriteLine("\nДобавление:");
            myCol_2.Add(emp);
            SetColor.ReversedBW("\nТеперь коллекция выглядит так:");
            myCol_2.ShowCollection();

            SetColor.ReversedBW("\nПроверка работы foreach. Вывод коллекции:");
            foreach (Person p in myCol_2)
            {
                Console.WriteLine(p);
            }

            Console.WriteLine("\nУдалим ранее добавленный элемент и элемент на третьей позиции:");
            myCol_2.Remove(emp);
            myCol_2.Remove(myCol_2[2]);
            SetColor.ReversedBW("\nТеперь коллекция выглядит так:");
            myCol_2.ShowCollection();
            Console.WriteLine("\nПопробуем удалить уже удаленный элемент:");
            myCol_2.Remove(emp);
            Console.WriteLine("Попробуем удалить элемент с индексом -4:");
            myCol_2.Remove(myCol_2[-4]);



            Console.ReadKey();
        }
コード例 #4
0
        public static MyCollection MakeList(int size)
        {
            int typeclass = random.Next(1, 4);

            MyCollection beg = new MyCollection();

            switch (typeclass)
            {
            case 1:
            {
                Place place = new Place();
                place.RandomCreate();
                Console.WriteLine("The element {0} is adding...", place.ToString());
                beg = MakeStack(place);
            }
            break;

            case 2:
            {
                Region region = new Region();
                region.RandomCreate();
                Console.WriteLine("The element {0} is adding...", region.ToString());
                beg = MakeStack(region);
            }
            break;

            case 3:
            {
                City city = new City();
                city.RandomCreate();
                Console.WriteLine("The element {0} is adding...", city.ToString());
                beg = MakeStack(city);
            }
            break;

            case 4:
            {
                Megapolis megapolis = new Megapolis();
                megapolis.RandomCreate();
                Console.WriteLine("The element {0} is adding...", megapolis.ToString());
                beg = MakeStack(megapolis);
            }
            break;
            }

            for (int i = 1; i < size; i++)
            {
                typeclass = random.Next(1, 4);
                MyCollection point = new MyCollection();

                switch (typeclass)
                {
                case 1:
                {
                    Place place = new Place();
                    place.RandomCreate();
                    Console.WriteLine("The element {0} is adding...", place.ToString());
                    point = MakeStack(place);
                }
                break;

                case 2:
                {
                    Region region = new Region();
                    region.RandomCreate();
                    Console.WriteLine("The element {0} is adding...", region.ToString());
                    point = MakeStack(region);
                }
                break;

                case 3:
                {
                    City city = new City();
                    city.RandomCreate();
                    Console.WriteLine("The element {0} is adding...", city.ToString());
                    point = MakeStack(city);
                }
                break;

                case 4:
                {
                    Megapolis megapolis = new Megapolis();
                    megapolis.RandomCreate();
                    Console.WriteLine("The element {0} is adding...", megapolis.ToString());
                    point = MakeStack(megapolis);
                }
                break;
                }
                point.next = beg;
                beg.pred   = point;
                beg        = point;
            }
            return(beg);
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: katekazarina/lab_12
 public MyCollection(MyCollection <Train> c)
 {
     Count = c.Count;
     First = c.First;
 }