Esempio n. 1
0
        private static void Main()
        {
            var list = new List();
            var exit = false;

            while (!exit)
            {
                Console.WriteLine("Выберите желаемое действие с двухсвязным списокм:");
                Console.WriteLine("------------------------------------------------");
                Console.WriteLine("1 - Добавить элемент в начало списка.");
                Console.WriteLine("2 - Добавить элемент в конец списка.");
                Console.WriteLine("3 - Добавить элемент перед выбранным элементом списка.");
                Console.WriteLine("4 - Добавить элемент после выбранного элемента списка.");
                Console.WriteLine("5 - Удалить выбранный элемент.");
                Console.WriteLine("6 - Развернуть список.");
                Console.WriteLine("7 - Вывести список.");
                Console.WriteLine("0 - Выйти из программы.");
                var val    = Console.ReadLine();
                var choice = Convert.ToInt32(val);
                var data   = "";
                int key;
                switch (choice)
                {
                case 1:
                    Console.WriteLine("Введите данные для добавляемого элемента:");
                    data = Console.ReadLine();
                    list.InsertAtFront(data);
                    break;

                case 2:
                    Console.WriteLine("Введите данные для добавляемого элемента:");
                    data = Console.ReadLine();
                    list.InsertAtEnd(data);
                    break;

                case 3:
                    Console.WriteLine("Введите номер элемента:");
                    data = Console.ReadLine();
                    key  = Convert.ToInt32(data);
                    Console.WriteLine("Введите данные для добавляемого элемента:");
                    data = Console.ReadLine();
                    list.InsertBeforeSelected(key, data);
                    break;

                case 4:
                    Console.WriteLine("Введите номер элемента:");
                    data = Console.ReadLine();
                    key  = Convert.ToInt32(data);
                    Console.WriteLine("Введите данные для добавляемого элемента:");
                    data = Console.ReadLine();
                    list.InsertAfterSelected(key, data);
                    break;

                case 5:
                    Console.WriteLine("Введите номер удаляемого элемента:");
                    data = Console.ReadLine();
                    var delChoice = Convert.ToInt32(data);
                    list.DeleteSelected(delChoice);
                    break;

                case 6:
                    list.ListReverse();
                    break;

                case 7:
                    list.PrintList();
                    break;

                case 0:
                    exit = true;
                    break;

                default:
                    Console.WriteLine("Error.");
                    break;
                }
            }
        }