Esempio n. 1
0
        static List <BagagemPessoa> geraFila(int tamanhoMax)
        {
            var filaRandom = new Random().Next(0, tamanhoMax);
            var fila       = new List <BagagemPessoa>();

            for (int i = 0; i < filaRandom; i++)
            {
                var bagagem    = new Random().Next(5, 31);
                var bagagemMao = new Random().Next(0, 16);

                var usuarioFila = new BagagemPessoa(bagagem, bagagemMao);

                fila.Add(usuarioFila);
            }

            return(fila);
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            //A Função do Ramdom.Next(minValue, maxValue) funciona como min <= X < max, então o valor máximo desejado deve ser adicionado 1, pois não é inclusivo.
            var usuario = new BagagemPessoa();

            Console.WriteLine("=================================================================");
            Console.WriteLine("============================BEM VINDO============================");
            Console.WriteLine("=================================================================");
            Console.WriteLine("Para Simular seu tempo gasto em um aeroporto, por favor digite:");

            Console.WriteLine("O Peso da sua bagagem:");
            usuario.Bagagem = Int32.Parse(Console.ReadLine());

            Console.WriteLine("O Peso da sua bagagem de mão:");
            usuario.BagagemMao = Int32.Parse(Console.ReadLine());

            if (usuario.Bagagem != 0 || usuario.BagagemMao > 10)
            {
                Console.WriteLine("Você acaba de entrar na fila para pesar suas malas e fazer check-in");

                var filaBagagem = geraFila(15); //média de 7 pessoas
                Console.WriteLine($"Atualmente existem {filaBagagem.Count()} pessoas na sua frente na fila");

                int tempoFila = 0;
                foreach (var pessoa in filaBagagem)
                {
                    pessoa.PesagemBagagem();
                    pessoa.PesagemBagagemMao();
                    tempoFila += pessoa.TempoUsuario;
                }
                Console.WriteLine($"Foram necessários {tempoFila} minutos para que todas pessoas a sua frente fossem atendidas");

                usuario.TempoUsuario += tempoFila;
                int tempoPesagem = 0;
                tempoPesagem += usuario.PesagemBagagem();
                tempoPesagem += usuario.PesagemBagagemMao();

                if (usuario.BagagemExtra)
                {
                    Console.WriteLine("Sua Bagagem estava acima do peso de 23 kgs, foi necessário pagar pelo peso extra");
                }

                if (usuario.DespacharBagagemMao)
                {
                    Console.WriteLine("Sua bagagem de mão estava acima do limite de 10 kgs e precisou ser despachada");
                }

                Console.WriteLine($"Foram necessários {tempoPesagem} minutos para terminar de pesar a suas bagagens e fazer seu check-in");
            }
            else
            {
                var filaRapida = new Random().Next(0, 9); //média de 4 pessoas
                Console.WriteLine("Você não tem bagagens para despachar, é possível fazer apenas check-in em um guichê rapido");
                Console.WriteLine($"Atualmente existem {filaRapida} pessoas na sua frente na fila, levará {filaRapida * 4} minutos para  o Check-in");
                usuario.TempoUsuario += filaRapida * 4;
            }

            var pessoasInspecao = new Random().Next(0, 9); //média de 4 pessoas
            int tempoInspecao   = 0;

            for (int i = 0; i < pessoasInspecao; i++)
            {
                tempoInspecao += new Random().Next(4, 7);
            }

            usuario.TempoUsuario += tempoInspecao;
            Console.WriteLine($"Você está se encaminhando para fila de inspeção de bagagens, atualmente existem {pessoasInspecao}  pessoas a sua frente.");
            Console.WriteLine($"Foram necessários {tempoInspecao} minutos para que chegasse sua vez.");

            var inspecaoBagagem = new Random().Next(0, 100);

            if (inspecaoBagagem > 70)
            {
                Console.WriteLine($"Foi Necessário revistar a sua bagagem de mão, isso levou mais 5 minutos");
                usuario.TempoUsuario += 5;
            }

            var portao      = new Random().Next(1, 6);
            var tempoPortao = usuario.TempoPortao(portao);

            Console.WriteLine($"O Seu portão de entrada será o portão de número  {portao}, que fica a {tempoPortao} minutos de distancia");

            if (portao == 5)
            {
                Console.WriteLine($"O Portão de número 5 necessita de Onibus até o avião, isso levará mais 10 minutos");
                usuario.TempoUsuario += 10;
            }

            Console.WriteLine($"Você Embarcou em seu Avião");
            Console.WriteLine($"Foram necessários {usuario.TempoUsuario} minutos para que você terminasse todo o processo.");

            Console.ReadLine();
        }