Em um algoritmo que registra múltiplos telefones por aluno, qual estrutura de dado (variável) é mais adequada…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Criar soluções de problemas para os quais seja adequado o uso de listas para descrever suas informações e automatizá-las usando uma linguagem de programação, empregando ou não a recursão como uma técnica de resolver o problema.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em um algoritmo que registra múltiplos telefones por aluno, qual estrutura de dado (variável) é mais adequada para armazenar esse conjunto de números e permitir inserções e iterações eficientes?
- A) Registro com campos fixos para cada telefone.
- B) Lista (array dinâmico) de valores (strings) — uma lista de telefones por aluno.
- C) Dicionário (mapa) onde as chaves são os telefones.
- D) Lista estática com tamanho fixo de 10.
- E) Estrutura de conjunto (set) para armazenar números.
✅ Resposta correta: alternativa B
Resolução passo a passo
- O enunciado pede a estrutura mais adequada para guardar um conjunto de telefones de cada aluno, com inserções e iterações eficientes. Como a quantidade de telefones varia de aluno para aluno e pode crescer, a estrutura precisa ser dinâmica e ordenada pela ordem de inclusão.
- Uma lista dinâmica (array dinâmico) de strings atende a esses requisitos. Ela cresce conforme necessário, permite adicionar um novo telefone ao final com custo baixo, e percorrê-la do início ao fim é simples e eficiente. Usar string evita perder zeros à esquerda e facilita armazenar formatos como DDD e traços.
- Por que as outras estão erradas:
- A) Um registro com campos fixos exige saber de antemão quantos telefones existem, e não permite iterar de forma natural sobre um número variável de itens.
- C) Um dicionário associa chaves a valores; usar o próprio telefone como chave não modela bem uma coleção simples de números e não é a estrutura pedida para iterar sobre os telefones do aluno.
- D) Uma lista estática de tamanho 10 limita o número de telefones e desperdiça memória quando o aluno tem poucos números.
- E) Um conjunto não garante a ordem dos elementos e não mantém a mesma naturalidade para iterar, além de eliminar duplicatas, o que pode não ser desejado; o enunciado pede uma estrutura de sequência de valores.
- Conclusão: a alternativa correta é a B, que coincide com o gabarito oficial.
💡 Dica: Considere as características das estruturas de dados em programação.
Alternativa por alternativa
O aluno acredita que registros com campos fixos são a melhor forma de guardar dados de um mesmo tipo, esquecendo que o número de telefones varia.
Listas/arrays dinâmicos permitem armazenar quantidade variável de elementos por aluno, suportam inserções e iteração eficiente sobre os telefones e são mais flexíveis que campos fixos em um registro.
O aluno pensa que, por telefones serem identificadores únicos, devem ser usados como chaves de um mapa, sem considerar que a tarefa é apenas armazenar e percorrer uma coleção.
O aluno entende que estruturas estáticas são sempre mais simples e seguras, sem perceber que o tamanho fixo de 10 impõe um limite arbitrário ao número de telefones.
Por que engana: Escolher uma estrutura de dados que não permite inserções dinâmicas, como a lista estática, pensando que o número de telefones é fixo.
O aluno associa conjuntos a qualquer coleção de números e ignora que o conjunto não preserva ordem nem é a estrutura típica para iterar sequencialmente sobre registros.
Raio-X da questão
estruturas de dados
avaliacao
estruturas de dados · algoritmos de armazenamento
Revisar os tipos de estruturas de dados e suas aplicações.
Escolher uma estrutura de dados que não permite inserções dinâmicas, como a lista estática, pensando que o número de telefones é fixo.
ciencia_tecnologia
tomada_decisao
abstrato
Questões parecidas com resolução
- Em uma estufa, um programa analisa a umidade de cinco canteiros, na ordem indicada, e aciona a irrigação quando a…
- Na feira cultural da escola, um grupo criou uma lista com as músicas que tocarão no palco: abertura, apresentação de…
- Na horta da escola, foram registradas as umidades do solo em uma lista: [42, 37, 35]. Uma função recursiva verifica se…
- Uma banca de feira registra em uma lista o preço de cada cesta vendida durante a manhã. Para calcular o total…
- Pesquisadores acompanham a qualidade da água em estações de um rio e precisam automatizar a leitura dos sensores. No…
- Por que uma lâmpada apagada pode continuar sem reparo por vários dias? Na central de atendimento de um município…
Todas as questões de Programação - Programação com listas e recursão
🔎 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
