コード例 #1
0
        static void Main(string[] args)
        {
            Cargo cargo = new Cargo();
            Dictionary <double, string> options = new Dictionary <double, string>();

            AirContainer   air   = new AirContainer();
            SeaContainer   sea   = new SeaContainer();
            TrainContainer train = new TrainContainer();
            WagonContainer wagon = new WagonContainer();
            TruckContainer truck = new TruckContainer();

            OperationConsole.inputCargo(cargo);
            OperationConsole.showCargo(cargo);

            OperationConsole.selectContainer(cargo, air, options);
            OperationConsole.selectContainer(cargo, sea, options);
            OperationConsole.selectContainer(cargo, train, options);
            OperationConsole.selectContainer(cargo, wagon, options);
            OperationConsole.selectContainer(cargo, truck, options);

            double min = 1000000000;
            string str = "";

            foreach (var item in options)
            {
                if (item.Key < min)
                {
                    min = item.Key;
                    str = item.Value;
                }
            }
            WriteLine("-------------------------------");
            WriteLine($"Мы рекомендуем воспользоваться {str}");
        }
コード例 #2
0
 public static void selectContainer(Cargo cargo, AirContainer air, Dictionary <double, string> options) // Метод который даёт полную информацию о совместимости груза и контейнера, если всё ок, то в массив с успешными вариантами
 {
     if (air.checkVolume(cargo))
     {
         WriteLine("Для Вашего груза доступна авиаперевозка");
         air.containerPlace(cargo);
         WriteLine($"С учётом Вашего груза контейнер загружен на {air.Percent()}%");
         WriteLine($"Стоимость перевозки составит - {air.getPrice(cargo)}");
         WriteLine("-------------------------");
         double temp = air.getPrice(cargo) / air.Percent(); // коэффициент оптимального выбора контейнера исходя из стоимости и загруженности
         options.Add(temp, "Аэроперевозка");
     }
     else
     {
         WriteLine("Авиаперевозка не доступна");
         WriteLine("--------------------------");
     }
 }