Exemple #1
0
        static void Main(string[] args)
        {
            var firstCar = new Car("Лада", 'D')
            {
                Color = Color.BlueViolet
            };
            Console.WriteLine("Приобретена машина {0}, " +
                  "категории: {1}, цвет: {2}",
                  firstCar.Model, firstCar.Category, firstCar.Color);
            try
            {
                Console.WriteLine("Имя владельца: " + firstCar.CarPassport.Owner.Name);
            }
            catch (Exception)
            {
                Console.WriteLine("Ошибка! У владельца отсутствует имя");
            }

            var firstDriver = new Driver(new DateTime(2014, 7, 15), "Вольдемар")
            {
                Category = new [] {'B', 'C'}
            };

            firstCar.ChangeOwner(firstDriver, "oo777o");
            firstDriver.Category = new [] {'B','C','D'};
            firstCar.ChangeOwner(firstDriver, "oo777o");
            Console.WriteLine("Номер машины: " + firstCar.CarNumber);
            Console.WriteLine("Имя водителя Лады: " + firstDriver.Name);
            Console.ReadKey();
        }
Exemple #2
0
        static void Main(string[] args)
        {
            Car car= new Car("Lada", "D");
            car.Color= Color.Brown;

            try
            {
                Console.WriteLine(car.CarPassport.Owner.Name);
            }
            catch (NullReferenceException)
            {
                Console.WriteLine("Водитель не назначен");
            }

            Driver dr= new Driver(new DateTime(1998, 11, 22), "Voldemar");
            dr.Category= new List<string>() {"B", "C"};
            try
            {
                car.ChangeOwner(dr, "o777oo");
            }
            catch (NoCategoryException ex)
            {

                Console.WriteLine(ex.Message);
            }

            dr.Category.Add("D");
            car.ChangeOwner(dr, "o777oo");
            Console.WriteLine(dr.Car.CarNumber);
            Console.WriteLine(car.CarPassport.Owner.Name);

            Console.ReadKey();
        }
Exemple #3
0
 static void Main(string[] args)
 {
     Car car = new Car("Lada", "D") { Color = Color.DarkMagenta };
     try
     {
         Console.WriteLine(car.CarPassport.Owner.Name);
     }
     catch (NullReferenceException)
     {
         Console.WriteLine("Нет имени владельца");
     }
     Driver driver = new Driver(new DateTime(1990, 10, 10), "Вольдемар") { Category = "BC" };
     try
     {
         car.ChangeOwner(driver, "о777оо");
     }
     catch (CarException carException)
     {
         Console.WriteLine(carException.Message);
     }
     driver.Category = driver.Category.Insert(2, "D");
     car.ChangeOwner(driver, "о777оо");
     Console.WriteLine(driver.Car.CarNumber);
     Console.WriteLine(car.CarPassport.Owner.Name);
     Console.ReadKey();
 }
Exemple #4
0
        static void Main(string[] args)
        {
            // Console.OutputEncoding = Encoding.UTF8;
            var carLada = new Car("2107", "D");
            carLada.Color = Color.Indigo; // вроде этот цвет похож на баклажановый
            if (carLada.carPassport.Owner != null)
            {
                Console.WriteLine(" Владелец машины {0}",carLada.carPassport.Owner.Name);
            }
            else
            {
                Console.WriteLine("У машины еще нет владельца");
            }

            Console.WriteLine("----------------------------------------");

            var driver = new Driver(new DateTime(2014, 12, 30), "Вольдемар") {Category = "BC"};

            try
            {
                carLada.ChangeOwner(driver, "o777oo");
                Console.WriteLine("водитель успешно сменен");
            }
            catch (MyException ex)
            {
                Console.WriteLine(ex.Message);
            }

            Console.WriteLine("----------------------------------------");

            driver.Category = driver.Category + "D";

            try
            {
                carLada.ChangeOwner(driver, "o777oo");
                Console.WriteLine("водитель успешно сменен");
            }
            catch (MyException ex)
            {
                Console.WriteLine(ex.Message);
            }

            Console.WriteLine("----------------------------------------");

            Console.WriteLine("номер машины {1}а: {0}",driver.Car.CarNumber, driver.Name);

            Console.WriteLine("----------------------------------------");

            if (carLada.carPassport.Owner != null)
            {
                Console.WriteLine("владелец машины {0} - {1}", carLada.Model, carLada.carPassport.Owner.Name);
            }

            Console.ReadKey();
        }
Exemple #5
0
        static void Main(string[] args)
        {
            //FR001
            var model = "Лада";
            var category = 'D';
            var car = new Car(model, category) { Color = Color.DarkMagenta };

            //FR002
            try
            {
                Console.WriteLine("Имя владельца {0}: {1}", car.Model, car.CarPassport.Owner.Name);
            }
            catch (NullReferenceException exeption)
            {
                Console.WriteLine("Владельца {0} не существует! Сообщение об ошибке: {1}", car.Model, exeption.Message);
            }

            //FR003
            var driverName = "Вольдемар";
            var driverCategory = "BC";
            var driver = new Driver(new DateTime(2010, 11, 20), driverName) { Category = driverCategory };

            //FR004
            var carNumber = "o777oo";
            try
            {
                car.ChangeOwner(driver, carNumber);
            }
            catch (NoCategoryException exception)
            {
                Console.WriteLine(exception.Message);
            }

            //FR005
            if (!driverCategory.Contains('D')) driver.Category += "D";
            try
            {
                car.ChangeOwner(driver, carNumber);
            }
            catch (NoCategoryException exception)
            {
                Console.WriteLine(exception.Message);
            }

            //FR006
            Console.WriteLine("Номер машины {0}: {1}", driver.Name, driver.Car.CarNumber);

            //FR007
            Console.WriteLine("Имя владельца {0}: {1}", car.Model, car.CarPassport.Owner.Name);

            Console.ReadKey();
        }
        static void Main(string[] args)
        {

            var car = new Car("Лада", 'D') { Color = ConsoleColor.DarkMagenta };
            Console.WriteLine("Автосалон приобрел новую машину");
            Console.WriteLine("Владелец машины:");
            try
            {
                Console.WriteLine(car.CarPass.Owner.Name);
            }
            catch (System.NullReferenceException)
            {
                Console.WriteLine("У данной машины пока нет владельца");
            }
            DateTime date1 = new DateTime(1990, 12, 1, 0, 0, 0);
            var drivingInstructor = new Driver(date1, "Вольдемар");
            Console.WriteLine("Нанят водитель (инструктор) {0}", drivingInstructor.Name);

            Console.WriteLine(drivingInstructor.AddCategory('B'));

            Console.WriteLine(drivingInstructor.AddCategory('C'));
            
            try
            {
                car.ChangeOwner("о777оо", drivingInstructor);
            }
            catch (ArgumentException)
            {
                Console.WriteLine("У предлагаемого владельца нет прав для управления данной машиной");
            }

            Console.WriteLine(drivingInstructor.AddCategory('D'));
            
            try
            {
                car.ChangeOwner("о777оо", drivingInstructor);
            }
            catch (ArgumentException)
            {
                Console.WriteLine("У предлагаемого владельца нет прав для управления данной машиной");
            }
            Console.WriteLine("Номер машины водителя с именем {0} - {1}", drivingInstructor.Name, drivingInstructor.PropsCar.CarNumber);
            Console.WriteLine("Владелец машины Лада - {0}", car.CarPass.Owner.Name);
            Console.ReadLine();
        }
Exemple #7
0
        static void Main(string[] args)
        {
            var firstCar = new Car("Лада", Convert.ToChar("D")) {Color = Color.DarkViolet};

            try
            {
                Console.WriteLine(firstCar.CarPassport.Owner.Name);
                Console.ReadKey();
            }
            catch (Exception exc)
            {
                Console.WriteLine("Не можем вывести имя владельца, ошибка: " + exc.Message);
                Console.ReadKey();
            }

            var instructor = new Driver(new DateTime(2000, 10, 10), "Вольдемар") {Category = new char[] {'B', 'C'}};

            try
            {
                firstCar.ChangeOwner(instructor, "о777оо");
            }
            catch (NoCategoryException exc)
            {
                Console.WriteLine("Ошибка! " + exc.Message);
            }

            Console.ReadKey();

            instructor.Category = new char[] {'B', 'C', 'D'};

            try
            {
                firstCar.ChangeOwner(instructor, "о777оо");
            }
            catch (NoCategoryException exc)
            {
                Console.WriteLine("Ошибка!" + exc.Message);
            }

            Console.WriteLine(instructor.Car.CarNumber);
            Console.ReadKey();

            Console.WriteLine(firstCar.CarPassport.Owner.Name);
            Console.ReadKey();
        }
Exemple #8
0
        static void Main(string[] args)
        {
            var model = "Лада";
            var category = 'D';
            var car = new Car(category, model) {Color = Color.DarkOrchid};

            try
            {
                Console.WriteLine("Имя владельца {0}: {1}", car.Model, car.CarPassport.Owner.Name);
            }
            catch (NullReferenceException exeption)
            {
                Console.WriteLine("Владельца {0} не существует! Сообщение об ошибке: {1}", car.Model, exeption.Message);
            }

            var Name = "Вольдемар";
            var Category = "BC";
            var driver = new Driver(new DateTime(2014, 07, 29), Name) { Category = Category };

            var CarNumber = "o777oo";
            try
            {
                car.ChangeOwner(driver, CarNumber);
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception.Message);
            }

            driver.Category = driver.Category + "D";
            try
            {
                car.ChangeOwner(driver, CarNumber);
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception.Message);
            }

            Console.WriteLine(driver.Car.CarNumber);
            Console.WriteLine(driver.Name);
            Console.ReadKey();
        }
Exemple #9
0
        static void Main(string[] args)
        {
            var car = new Car("Лада", 'D');
            car.Color = Color.DarkMagenta;
           
            Console.Write("Владелец лады: ");
            try
            {
                Console.Write(car.CarPassport.Owner.Name);
            }
            catch (Exception)
            {

                Console.WriteLine("Водителя нет!");
            }
          
            var driver = new Driver(new DateTime(2014,01,25), "Вольдемар");

            driver.DriverCategory += "BC";

            Console.WriteLine();

            try
            {
                car.ChangeOwner(driver, "oo777o");
            }
            catch (DriverCategoryNotFoundException exc)
            {
                Console.WriteLine("Не удалось присвоить машину водителю. " + exc.Message);
            }

            driver.DriverCategory += "D";

            car.ChangeOwner(driver, "oo777o");


            Console.WriteLine();
            Console.WriteLine(driver.Car.CarNumber);
            Console.WriteLine();
            Console.Write(car.CarPassport.Owner.Name);

            Console.ReadKey();
        }
Exemple #10
0
        static void Main(string[] args)
        {
            var lada = new Car("Лада", 'D') { Color = Color.DarkViolet };
            try
            {
                Console.WriteLine("Владелец: {0}", lada.CarPassport.Owner.Name);
            }
            catch (NullReferenceException e)
            {
                Console.WriteLine("У автомобиля еще нет водителя. Сообщение: " + e.Message);
            }

            var instructor = new Driver(new DateTime(1985, 7, 13), "Вольдемар");

            instructor.Category += "BC";

            try
            {
                lada.ChangeOwner(instructor, "o777ooo");
            }
            catch (CategoryException e)
            {
                Console.WriteLine("Не получилось изменить владельца. Сообщение: " + e.Message);
            }

            instructor.Category += "D";

            try
            {
                lada.ChangeOwner(instructor, "o777ooo");
            }
            catch (CategoryException e)
            {
                Console.WriteLine("Не получилось изменить владельца. Сообщение: " + e.Message);
            }

            Console.WriteLine(instructor.Car.CarNumber);

            Console.WriteLine(lada.CarPassport.Owner.Name);

            Console.ReadKey();
        }
Exemple #11
0
        private static void Main(string[] args)
        {
            Car car1 = new Car("Lada Sedan", 'D');
            car1.Color=Color.FromArgb(35, 3, 43);
            try
            {
                Console.WriteLine("Driver's name is"+ car1.CarPassport.Owner.Name);
            }
            catch (NullReferenceException)
            {
                Console.WriteLine("Impossible to show driver's name. " +
                                        "It hasn't been specified yet"); }

            var driver1 = new Driver(new DateTime(2007, 1, 11), "Voldemar");
            driver1.Category = "BC";
            try
            {
                car1.ChangeOwner(driver1, "o777oo");
            }
            catch (Exception exc)
            {
                Console.WriteLine(exc.Message);
            }

            driver1.Category = driver1.Category.Insert(2, "D");
            try
            {
                car1.ChangeOwner(driver1, "o777oo");
            }
            catch (CategoryOfDriverException)
            {

                Console.WriteLine("Driver has no needed category to rule this car.");
            }

            Console.WriteLine("Car number: "+ driver1.Car.CarNumber);
            Console.WriteLine("Owner's name: " + car1.CarPassport.Owner.Name);
            Console.WriteLine("Driver has experience of {0} years", driver1.Experience);

            Console.ReadKey();
        }
Exemple #12
0
        private static void Main(string[] args)
        {
            var car = new Car("Лада", "D") {Color = Color.DarkOrchid};

            try
            {
                Console.WriteLine("Владелец: {0}", car.CarPassport.Owner.Name);
            }
            catch (NullReferenceException exception)
            {
                Console.WriteLine("Владелец еще не назначен.\n" + exception.Message);
            }

            var driver = new Driver(new DateTime(2010, 10, 5), "Вольдемар") {Category = "BC"};

            try
            {
                car.ChangeOwner("o777oo", driver);
            }
            catch (CarCategoryException exception)
            {
                Console.WriteLine(exception.Message);
            }

            driver.Category += "D";

            car.ChangeOwner("o777oo", driver);

            Console.WriteLine($"Номер машины : {driver.Car.CarNumber}");

            try
            {
                Console.WriteLine("Владелец: {0}", car.CarPassport.Owner.Name);
            }
            catch (NullReferenceException exception)
            {
                Console.WriteLine("Владелец еще не назначен.\n" + exception.Message);
            }

            Console.ReadLine();
        }
Exemple #13
0
        static void Main(string[] args)
        {
            //FR001
            var carLada = new Car("Лада", "D") {Color = Color.DarkMagenta};

            //FR002
            try
            {
                Console.WriteLine("Имя владельца Лады: {0}", carLada.CarPassport.Owner.Name);
            }
            catch (NullReferenceException exception)
            {
                Console.WriteLine("Исключение: невозможно вывести имя владельца!!!\n Сообщение: " + exception.Message + "\n");
            }

            //FR003
            var driverVoldemar = new Driver(new DateTime(2012, 01, 22), "Вольдемар") { Category = "BC"};

            //FR004
            try
            {
                carLada.ChangeOwner(driverVoldemar, "o777oo");
            }
            catch (CategoryNotFoundException exeption)
            {
                Console.WriteLine(exeption.Message);
            }

            //FR005
            driverVoldemar.Category += "D";
            carLada.ChangeOwner(driverVoldemar, "o777oo");

            //FR006
            Console.WriteLine("\nНомер машины Вольдемара: {0}", driverVoldemar.Car.CarNumber);

            //FR007
            Console.WriteLine("\nИмя владельца лады : {0}", carLada.CarPassport.Owner.Name);

            Console.ReadKey();
        }
Exemple #14
0
        static void Main(string[] args)
        {
            var  car = new Car("Lada","D");
            car.Color = Color.BlueViolet;

            try
            {
                Console.WriteLine("Владелец машины - " + car.CarPassport.Owner.Name);
            }
            catch (Exception)
            {
                Console.WriteLine("Вы не ввели имя владельца!");
            }

            var driver = new Driver(new DateTime(2014,2,1), "Вальдемар");

            driver.Category = "BC";

            try
            {
                car.ChangeOwner(driver, "o777oo");
            }
            catch (Exception)
            {

                Console.WriteLine("Error!");
            }

            
            driver.Category += "D";
            car.ChangeOwner(driver, "o777oo");
            

            Console.WriteLine("Номер машины: " + driver.Car.CarNumber);

            Console.WriteLine("Владелец машины: " + car.CarPassport.Owner.Name);


            Console.ReadKey();
        }
Exemple #15
0
        private static void Main(string[] args)
        {
            var car = new Car("Лада", 'D') {Color = Color.FromArgb(97, 64, 81)};
            try
            {
                Console.WriteLine("Владелец - {0}", car.CarPassport.Owner.Name);
            }
            catch (NullReferenceException)
            {
                Console.WriteLine("Машина не имеет владельца");
            }
            var driver = new Driver(DateTime.Today, "Вольдемар");
            driver.Category.Add('B');
            driver.Category.Add('C');
            try
            {
                car.ChangeOwner(driver, "о777оо");
            }
            catch (CategoryException exception)
            {
                Console.WriteLine(exception.Message);
            }
            driver.Category.Add('D');
            try
            {
                car.ChangeOwner(driver, "о777оо");
            }
            catch (CategoryException exception)
            {
                Console.WriteLine(exception.Message);
            }

            Console.WriteLine("Номер машины водителя {0} - {1}", driver.Name, driver.Car.CarNumber);
            Console.WriteLine("Владелец машины {0} с номером {1} - {2}", car.Model, car.CarNumber,
                car.CarPassport.Owner.Name);

            Console.ReadKey();
        }
Exemple #16
0
        static void Main(string[] args)
        {
            Console.WriteLine("Автомобиль не найден. Необходимо добавить автомобиль");
            Console.WriteLine("Укажите модель автомобиля" + "\n");
            string model = Console.ReadLine();
            Console.WriteLine("Введите категорию данного ТС" + "\n");
            string category = Console.ReadLine().ToLower();
            var car = new Car(model, category);

            Console.WriteLine("У вас нет ни одного водителя. Наймите инструктора");
            Console.WriteLine("Введите имя водителя:" + "\n");
            string driverName = Console.ReadLine();

            Console.WriteLine("Укажите дату получения водительского удостоверения:" + "\n");
            DateTime driverLicDate;
            try
            {
                driverLicDate = Convert.ToDateTime(Console.ReadLine());
            }
            catch (FormatException)
            {
                Console.WriteLine("Вы указали неверный формат даты, укажите корректную дату");
                driverLicDate = Convert.ToDateTime(Console.ReadLine());
            }

            var driver = new Driver(driverLicDate, driverName);
            bool exit = false;
            int mainMenu = 0;
            while (!exit)
            {
               Console.WriteLine("Выберите раздел: 1-Автомобили; 2 - Водители;" + "\n");
                mainMenu = Convert.ToInt32(Console.ReadLine());
                bool back = false;
                while (!back)
                {

                    switch (mainMenu)
                    {
                            #region CarMenu

                        case 1:
                            Console.WriteLine("1 - Задать цвет;" + "\n" +
                                              "2 - Информация о владельце;"
                                               + "\n" +  "3 - Вернуться в предыдущее меню" + "\n");
                            int carMenu = Convert.ToInt32(Console.ReadLine());
                            switch (carMenu)
                            {
                                case 1:
                                    Console.WriteLine("Введите цвет" + "\n");
                                    car.Color = Color.FromName(name: Console.ReadLine());
                                    break;

                                case 2:
                                    if (car.CarPassport.Owner != null)
                                    {
                                        Console.WriteLine(car.CarPassport.Owner.Name.ToString());
                                    }
                                    else
                                    {
                                        Console.WriteLine("Данному автомобилю не присвоен владелец");
                                    }
                                    break;

                                case 3:
                                    back = true;
                                    break;
                            }
                            break;
                    #endregion

                    #region CarDriver

                    case 2:
                            Console.WriteLine("1 - Закрепить автомобиль за водителем;" + "\n" +
                                            "2 - Добавить категорию;" + "\n" + "3 - Информация о номере автомобиля;" +
                                            "\n"  + "4 - Поменять владельца"+ "\n"+"5 - Просмотр информации о владельце автомобиля" + "\n" + "6 - Вернуться в предыдущее меню" + "\n");
                            int driverMenu = int.Parse(Console.ReadLine());
                            switch (driverMenu)
                            {
                                case 1:
                                    Console.WriteLine("Закрепить автомобиль "+car.Model +" "+car.CarNumber+" за водителем "+driver.Name+"?");
                                    Console.WriteLine("1 - Да; 2 - Нет");
                                    int confirm = Int32.Parse(Console.ReadLine());
                                    if (confirm == 1)
                                    {
                                        driver.OwnCar(car);
                                    }
                                    break;

                                case 2:
                                    Console.WriteLine("Укажите категории:" + "\n");
                                    string[] categoriesArray = Console.ReadLine().ToLower().Split(new char[] { ' ', ',', '.', ';' });
                                    foreach (var c in categoriesArray)
                                    {
                                        driver.Categories.Add(c);
                                    }
                                    break;
                                case 3:
                                    if (car.CarNumber != null)
                                    {
                                        Console.WriteLine(car.CarNumber);
                                    }
                                    else
                                    {
                                        Console.WriteLine("У машины не указан номер");
                                    }
                                    break;
                                case 4:
                                    Console.WriteLine("Для выбора доступны водители: "+ driver.Name);
                                    Console.WriteLine("Впишите номер автомобиля");
                                    string carNumber = Console.ReadLine();
                                    Console.WriteLine("Впишите имя нового владельца");
                                    driverName = Console.ReadLine().ToLower();
                                    if (driverName == driver.Name.ToLower())
                                    {
                                        car.ChangeOwner(driver, carNumber);
                                    }
                                    else
                                    {
                                        Console.WriteLine("Водителя с таким именем не существует");
                                    }
                                    break;
                                case 5:
                                    if (car.CarPassport.Owner != null)
                                    {
                                        Console.WriteLine("Владелец автомобиля " + car.Model + ":" +
                                                          car.CarPassport.Owner.Name);
                                    }
                                    else
                                    {
                                        Console.WriteLine("У данного автомобиля нет владельца");
                                    }
                                    break;

                                case 6:
                                    back = true;
                                    break;
                            }
                            break;

                    #endregion
                }
            }

            }

                Console.ReadKey();
        }