Um sistema de venda de ingressos precisa modelar a ocupação dos assentos numa sala (linhas e colunas). Que…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Criar soluções de problemas para os quais seja adequado o uso de registros e matrizes unidimensionais para descrever suas informações e automatizá-las usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Um sistema de venda de ingressos precisa modelar a ocupação dos assentos numa sala (linhas e colunas). Que estrutura de dados e tipo de variável o algoritmo deve usar para permitir verificar disponibilidade e marcar assentos rapidamente?
- A) Usar uma matriz (array bidimensional) representando linhas e colunas com valores livre/ocupado.
- B) Armazenar cada assento em uma variável distinta (A1, A2, ...).
- C) Armazenar apenas o número total de assentos livres.
- D) Usar uma pilha para marcar assentos conforme vendidos.
- E) Usar um conjunto (set) com assentos disponíveis sem coordenadas.
✅ Resposta correta: alternativa A
Resolução passo a passo
- A sala é organizada em linhas e colunas, ou seja, cada assento tem uma posição definida por dois índices (linha e coluna). Passo 2: Para verificar se um assento está livre e marcá-lo como vendido de forma rápida, o algoritmo precisa acessar diretamente qualquer posição a partir de suas coordenadas. Uma matriz (array bidimensional) faz isso em tempo constante, bastando indexar matriz[linha][coluna]. Passo 3: Usar uma variável de tipo simples (por exemplo, booleano ou um código livre/ocupado) em cada posição da matriz representa bem o estado do assento. Passo 4: As demais alternativas estão erradas: B exige uma variável para cada assento, o que não escala e não permite percorrer ou localizar assentos por coordenadas de forma simples; C guarda apenas um total, sem informar qual assento específico está livre; D usa pilha, que só permite acesso ao topo e não serve para consultar um assento arbitrário; E usa conjunto sem coordenadas, o que impede relacionar o assento à sua posição física na sala. Gabarito oficial correto.
💡 Dica: Considere as estruturas de dados mais eficientes para o problema.
Alternativa por alternativa
A matriz corresponde à disposição física; acesso por índices (linha,coluna) é O(1), facilitando consulta e atualização de disponibilidade.
Acredita que dar um nome de variável separado a cada assento facilita o acesso, sem perceber que a sala tem muitos assentos e que não há uma forma padronizada de percorrê-los ou localizá-los a partir de linha e coluna.
Por que engana: Escolher armazenar cada assento em uma variável distinta, o que tornaria a verificação de disponibilidade ineficiente e complexa.
Confunde o controle de quantidade de vagas com o controle de ocupação, achando que saber o total de livres basta para verificar um assento específico e marcá-lo.
Imagina que a pilha, por ser uma estrutura simples de empilhar vendas, serve para registrar assentos; não percebe que ela só dá acesso ao último elemento inserido, o que impede consultar um assento qualquer.
Pensa que um conjunto de assentos disponíveis é suficiente, ignorando que a venda exige identificar o assento pela sua posição (linha e coluna) na sala, informação que o enunciado pede para modelar.
Raio-X da questão
estruturas de dados
diagnostico
estruturas de dados · array bidimensional
Revisar tipos de estruturas de dados e suas aplicações.
Escolher armazenar cada assento em uma variável distinta, o que tornaria a verificação de disponibilidade ineficiente e complexa.
ciencia_tecnologia
tomada_decisao
cotidiano
Questões parecidas com resolução
- Um centro cultural está organizando uma coleção de fotografias antigas do bairro. Para encontrar cada foto depois, será…
- Pesquisadores acompanham 16 pontos de coleta ao longo de um rio para avisar moradores quando a qualidade da água piora…
- — Se uma doação não for retirada até o fim da feira, precisamos avisar a associação certa — disse a coordenadora do…
- Técnicos da Defesa Civil do município fictício de Serra Clara acompanham quatro pluviômetros instalados em bairros…
- Por que um bilhete de devolução atrasada se perde tão fácil? Na pequena biblioteca comunitária do bairro, os empréstimos…
- — Se aparecer contaminação em um lote, a gente precisa descobrir de qual ponto veio e quem recolheu — disse uma das…
Todas as questões de Programação - Programação usando registros e matrizes
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
