Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — INEP 2025

Algoritmos e Estrutura de DadosAlgoritmos
Código
qg538112
Banca
INEP
Órgão
PND
Ano
2025
Nível
Superior
Cargo
COMPUTAÇÃO - Licenciatura
Para que o professor possa ensinar algoritmos de ordenação de forma interdisciplinar, integrando conceitos de funções matemáticas, a técnica de programação que favorece essa integração baseia-se na
  1. Amodelagem do algoritmo a partir de objetos, organizando os dados a partir de atributos e relacionando os métodos como funções matemáticas, permitindo que se estabeleça a transformação sistematizada da entrada em uma saída ordenada.
  2. Butilização da modularização do código em conjunto com funções recursivas, estruturando o algoritmo em etapas reutilizáveis e bem definidas, de modo que cada função represente uma transformação parcial dos dados, refletindo diretamente a lógica de uma função matemática.
  3. Caplicação de conceitos do paradigma funcional, como funções anônimas e composição, permitindo dividir o processo em pequenas operações declarativas que podem facilitar a visualização de uma única função que represente a transformação completa dos dados.
  4. Delaboração de algoritmos como uma sequência de respostas a eventos, associando funções a interações específicas como as operações envolvidas na solução do problema de ordenação, permitindo a representação da lógica como uma função matemática.
Revelar gabarito e comentário

GabaritoB — utilização da modularização do código em conjunto com funções recursivas, estruturando o algoritmo em etapas reutilizáveis e bem definidas, de modo que cada função represente uma transformação parcial dos dados, refletindo diretamente a lógica de uma função matemática.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Algoritmos de ordenação: integração com funções matemáticas

Gabarito: letra B. A técnica que mais favorece a integração com funções matemáticas é a modularização do código em conjunto com funções recursivas. Isso porque o Merge Sort — exemplo clássico de divisão e conquista — é naturalmente implementado com recursão, e a modularização permite que cada função represente uma transformação parcial dos dados, espelhando diretamente o conceito de função matemática (entrada → saída).

O enunciado destaca que o professor quer "relacionar o conteúdo a conceitos matemáticos" e usa o Merge Sort como exemplo. A recursão e a decomposição em subproblemas são a ponte natural para funções matemáticas, que também podem ser definidas recursivamente ou compostas por funções menores.

Técnica

Descrição

Relação com Funções Matemáticas

Exemplo no Merge Sort

Correta?

Modularização com funções recursivas

Divisão do código em funções reutilizáveis e bem definidas, com chamadas recursivas

Cada função representa uma transformação parcial dos dados, refletindo diretamente a lógica de uma função matemática (entrada → saída)

mergeSort (recursivo) e merge (combinação)

Modelagem orientada a objetos

Organização dos dados em atributos e métodos

Métodos podem ser vistos como funções, mas o foco não é a transformação pura dos dados

Não é a técnica mais natural para o Merge Sort

Paradigma funcional

Uso de funções anônimas e composição

Fortemente baseado em funções matemáticas, mas não é a técnica descrita no texto-base para o Merge Sort

Não é a técnica mais favorecida pelo enunciado

Programação orientada a eventos

Algoritmo como sequência de respostas a eventos

Associa funções a interações, não à transformação direta dos dados

Não se aplica ao Merge Sort

Alternativa A — ❌ Incorreta

A alternativa fala em "modelagem a partir de objetos" (orientação a objetos). Embora métodos possam ser vistos como funções, a orientação a objetos não é a técnica que favorece a integração direta com o conceito de função matemática. O foco está em atributos e métodos ligados a objetos, não na transformação pura dos dados como uma função matemática.

Alternativa B — ✅ Correta ⟵ GABARITO

Correta porque a modularização (divisão do código em funções reutilizáveis) combinada com funções recursivas permite que cada etapa do algoritmo seja vista como uma transformação parcial, exatamente como uma função matemática. No Merge Sort, a função mergeSort chama a si mesma recursivamente, e a função merge combina os resultados — cada uma é uma função que transforma dados. Isso reflete a ideia de função matemática: entrada → saída, sem efeitos colaterais.

Alternativa C — ❌ Incorreta

A alternativa cita o paradigma funcional com funções anônimas e composição. Embora o paradigma funcional seja fortemente baseado em funções matemáticas, a questão pergunta pela técnica de programação que o professor pode usar especificamente com o Merge Sort e que favorece a integração com funções matemáticas. O texto-base descreve o Merge Sort como um algoritmo recursivo e de divisão e conquista, não mencionando paradigma funcional. A modularização com recursão (alternativa B) é a abordagem mais direta e didática, independentemente do paradigma.

Alternativa D — ❌ Incorreta

A alternativa trata de programação orientada a eventos, onde funções são associadas a eventos específicos. Isso não se relaciona diretamente com funções matemáticas, pois o fluxo é dirigido por eventos, não por transformações sequenciais de dados. Não é a técnica que favorece a integração com conceitos matemáticos no contexto do Merge Sort.

Gabarito: letra B.

Link permanente: /questoes/qg538112