示例#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, WagonContainer wagon, Dictionary <double, string> options)
 {
     if (wagon.checkVolume(cargo))
     {
         WriteLine("Для Вашего груза доступна перевозка в фуре");
         wagon.containerPlace(cargo);
         WriteLine($"С учётом Вашего груза контейнер загружен на {wagon.Percent()}%");
         WriteLine($"Стоимость перевозки составит - {wagon.getPrice(cargo)}");
         WriteLine("-------------------------");
         double temp = wagon.getPrice(cargo) / wagon.Percent(); // коэффициент оптимального выбора контейнера исходя из стоимости и загруженности
         options.Add(temp, "Перевозка фурой");
     }
     else
     {
         WriteLine("Перевозка фурой не доступна");
         WriteLine("--------------------------");
     }
 }