Abelha | 3163
Controle de voo
By Jones Mendonça de Souza, IFSP BR Brazil
Prazo: 1
O aeroporto de Congonhas recebe em média 600 pousos e decolagens todos os dias, ou cerca de 36 por hora. No último ano, foram exatamente 223.989 movimentos aéreos. Para organizar todo o fluxo de aviões que chegam em Congonhas e saem de lá, a torre de controle opera o tempo todo com a máxima atenção. Para afastar qualquer possibilidade de erro humano, o chefe do controle de tráfego aéreo de Congonhas o contratou para desenvolver um programa que organiza automaticamente o fluxo de aviões no aeródromo. Para isso, basta seguir o seguinte protocolo, os aviões que vêm do lado oeste da pista têm maior prioridade de serem colocados na fila, pois são os que estão mais próximos do localizador (início da pista). Os aviões que estão se aproximando do lado Norte e Sul, por sua vez, devem ser inseridos na fileira 1 de cada vez, ou seja, 1 avião é inserido no lado Norte e depois 1 avião no lado Sul. Por fim, o próximo avião que se aproxima do lado leste da pista.

Passo 1

Beleza, vamos entender o que a questão tá pedindo. No aeroporto de Congonhas, tem um monte de aviões chegando e saindo todo dia, e esse fluxo precisa ser organizado direitinho pra evitar bagunça. A matéria que vamos precisar aqui envolve estruturas de dados, especificamente filas, e um pouco de prioridade na organização. O objetivo é criar um sistema que coloca os aviões na ordem certa baseado de onde eles estão se aproximando da pista: oeste, norte, sul e leste.

Passo 2

Primeiro, vamos identificar as categorias de aviões de acordo com a direção de onde eles vêm:
  1. Oeste: Esses aviões têm a maior prioridade porque estão mais próximos do início da pista.
  2. Norte e Sul: Esses precisam ser alternados na fila. Primeiro um do norte, depois um do sul, e assim por diante.
  3. Leste: Esses aviões têm a menor prioridade e só entram na fila quando não tem nenhum daquelas outras direções esperando.

Passo 3

Agora, vamos pensar em como organizar isso usando filas distintas para cada direção:
  • Fila Oeste: Para os aviões que vêm de oeste.
  • Fila Norte: Para os aviões que vêm do norte.
  • Fila Sul: Para os aviões que vêm do sul.
  • Fila Leste: Para os aviões que vêm do leste.

Passo 4

O próximo passo é definir a ordem de atendimento das filas:
  1. Atender todos os aviões da Fila Oeste primeiro, já que têm a maior prioridade.
  2. Alternar entre a Fila Norte e a Fila Sul. Isso significa que a cada avião do norte que entra, um do sul também entra, mantendo a ordem.
  3. Por último, atender os aviões da Fila Leste, quando não tiver mais aviões nas outras filas.

Passo 5

Para manejar a alternância entre norte e sul, podemos usar uma variável de controle que indica qual direção vai entrar na fila a seguir. Por exemplo, começamos com o norte:
  • Se foi atendido um do norte, o próximo tem que ser do sul.
  • E se foi do sul, o próximo tem que ser do norte.
  • Isso continua assim até não ter mais aviões em uma dessas filas.

Passo 6

Na implementação prática desse sistema, vamos seguir essas regras:
  • Prioridade Ótima: Sempre que tiver aviões na Fila Oeste, eles devem ser atendidos antes de qualquer outra fila.
  • Alternância Consistente: Mantenha a ordem norte-sul na hora de atender os aviões dessas direções.
  • Última Prioridade: Só atenda os aviões da Fila Leste quando as outras filas estiverem vazias.

Resposta

Com esse esquema de filas separadas e regras claras de prioridade e alternância, o programa vai conseguir organizar o fluxo de aviões no aeroporto de Congonhas de forma eficiente. Isso garante que os aviões mais próximos da pista sejam atendidos primeiro, que haja uma distribuição equilibrada entre norte e sul, e que os menos prioritários, como os do leste, só sejam atendidos quando não tem ninguém mais urgente na fila. Assim, a torre de controle evita confusões e mantém tudo rodando liso!

Exercícios relacionados