예제 #1
0
        public long chi;                                              //сумма на сколько изменить

        public static Tpassport operator -(Tpassport obj1, long obj2) //перегружаемый оператор
        {
            Tpassport arr = new Tpassport();

            arr = obj1;                                                //делаем полную копию элемента
            arr.dan_t[obj1.zz].cena = obj1.dan_t[obj1.zz].cena - obj2; //уменьшаем стоимость на заданное значение
            return(arr);
        }
예제 #2
0
        static void Main(string[] args)
        {
            const string PressAnyKey = "\nДля продолжения нажмите любую клавишу...";
            Tpassport    ff          = new Tpassport();

            int n_o, n_t;
            int item;

            n_o = 0; n_t = 0;
            do//меню пользователя
            {
                do
                {
                    Console.Clear();
                    Console.Write("\nВыберите одно из следующих действий:");
                    Console.Write("\n 1. Вводить данные о тарифах");
                    Console.Write("\n 2. Вводить паспортные данные пассажира и регистрировать покупку билета");
                    Console.Write("\n 3. Вывести данные о тарифах");
                    Console.Write("\n 4. Вывести паспортные данные пассажира и данные покупки билета");
                    Console.Write("\n 5. Рассчитать среднюю стоимость проданных билетов");
                    Console.Write("\n 6. По введенному наименованию направления высчитать сумму проданных билетов с учетом предоставленных скидок");
                    Console.Write("\n 7. Изменить цену тарифа");
                    Console.Write("\n 8. Выход в Windows");
                    Console.Write("\n Введите номер выбранного действия: ");
                    item = 0;
                    try
                    { item = Convert.ToInt16(Console.ReadLine()); }
                    catch (FormatException ex)//проверка на ошибки
                    { Console.WriteLine(ex.Message + "\nНеобходимо вводить целые числа от 1 до 7 " + PressAnyKey); Console.ReadKey(); }
                } while ((item < 1) || (item > 8));
                switch (item)//обработка команд пользователя
                {
                case 1: { n_t = n_t + 1; ff.Input(n_t, n_t, true); break; }

                case 2: { n_o = n_o + 1; ff.Input(n_o, n_t, false); break; }

                case 3: { ff.Print(n_t, true); break; }

                case 4: { ff.Print(n_o, false); break; }

                case 5: { ff.Srzn(n_o); break; }

                case 6: { ff.Spb(n_o, n_t); break; }

                case 7: { ff.f7(n_t); ff = ff - ff.chi; break; }

                case 8: { item = 0; break; }
                }
                if (item == 0)
                {
                    break;
                }
            } while (true);
        }