//функция отвечает за создание транспортных средств конкретным объектом класса-фабрики static void Create(IVehicleCreator creator) { bool cycle = true; //организует вложенный цикл меню while (cycle) { Console.WriteLine("Введите скорость (целое положительное число):"); string speedString = Console.ReadLine(); int speed; if ((int.TryParse(speedString, out speed)) && speed >= 0) { Console.WriteLine("Введите грузоподъёмность (целое положительное число):"); string loadCapacityString = Console.ReadLine(); int loadCapacity; if ((int.TryParse(loadCapacityString, out loadCapacity)) && loadCapacity >= 0) { IVehicle vehicle = creator.Create(speed, loadCapacity); //вызов фабричного метода vehicle.GetFullInfo(); Console.WriteLine("\n"); vehicle.DeliverGoods(); Console.WriteLine("\n"); cycle = false; } else { Console.WriteLine("Грузоподъёмность должна быть целым положительным числом"); } } else { Console.WriteLine("Скорость должна быть целым положительным числом"); } Console.WriteLine("\n"); } }