Ao decompor um algoritmo em funções, o que constitui o contrato (interface) de uma função em termos de…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Identificar os recursos ou insumos necessários (entradas) para a resolução de problemas, bem como os resultados esperados (saídas), determinando os respectivos tipos de dados, e estabelecendo a definição de problema como uma relação entre entrada e saída.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Ao decompor um algoritmo em funções, o que constitui o contrato (interface) de uma função em termos de entradas, saídas e comportamento?
- A) A documentação do usuário final sobre como utilizar o programa.
- B) O pseudocódigo da função, descrevendo a lógica implementada.
- C) O tempo de execução estimado da função em diferentes cenários.
- D) O algoritmo completo usado para resolver o problema proposto.
- E) A assinatura da função: parâmetros (tipos), valor de retorno e efeitos colaterais documentados.
✅ Resposta correta: alternativa E
Resolução passo a passo
- A questão pede o que forma o contrato, ou interface, de uma função, isto é, o conjunto de informações que descreve como ela se relaciona com quem a utiliza, sem revelar como ela foi implementada.
- O contrato de uma função é definido pela sua assinatura, que informa o nome, os parâmetros com seus tipos e o valor de retorno, complementada pela documentação dos efeitos colaterais, isto é, o que a função altera fora de si mesma (como arquivos, variáveis globais ou a tela). Essa é exatamente a alternativa E.
- Por que as outras estão erradas:
- A) A documentação para o usuário final descreve o uso do programa como um todo, não a interface entre funções do algoritmo.
- B) O pseudocódigo mostra a lógica interna, justamente o que o contrato deve ocultar do chamador.
- C) O tempo de execução é uma característica de desempenho, não faz parte da interface de entradas, saídas e comportamento.
- D) O algoritmo completo é a implementação do problema, e a ideia de contrato é separar a interface dessa implementação.
- Conclusão: a resposta correta é a alternativa E, que coincide com o gabarito oficial.
💡 Dica: Defina claramente as entradas e saídas da função.
Alternativa por alternativa
O aluno confunde a interface técnica entre funções com a documentação voltada ao usuário final do software, achando que 'contrato' se refere a manual de uso.
O aluno acredita que descrever a lógica interna da função define sua interface, sem perceber que o contrato justamente esconde a implementação de quem chama a função.
Por que engana: Confundir a definição de contrato de função com a documentação ou o pseudocódigo, que não descrevem diretamente a interface da função.
O aluno associa a qualidade de uma função ao seu desempenho e acredita que o tempo de execução faz parte do que a função promete em termos de entradas e saídas.
O aluno entende que a função deve conter o algoritmo completo do problema, confundindo a decomposição em funções com a própria solução inteira, sem separar interface e implementação.
A assinatura formaliza quais parâmetros e tipos a função recebe, o tipo devolvido e quais efeitos externos (I/O, alteração de estado) ela pode causar, permitindo integração segura entre módulos.
Raio-X da questão
contrato de função
avaliacao
decomposicao de algoritmos · funcoes em programacao
Revisar os conceitos de funções e suas interfaces em algoritmos.
Confundir a definição de contrato de função com a documentação ou o pseudocódigo, que não descrevem diretamente a interface da função.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Ao decompor um algoritmo complexo, que documentação técnica mínima deve acompanhar cada função para permitir integração…
- Em uma breve definição, o que significa decompor um algoritmo para promover a reutilização de código por meio de funções…
- No desenvolvimento de um algoritmo, qual a importância de identificar as entradas e saídas?
- Ao desenvolver um programa, o que deve ser considerado para garantir que o algoritmo funcione corretamente?
- Analise um algoritmo decomposto em muitas funções pequenas: como essa decomposição pode impactar o desempenho em termos…
- Ao decompor um algoritmo que valida vários tipos de entrada, que subtarefa promove generalização e reúso de código por…
Todas as questões de Estratégias de solução de problemas - Generalizaçã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
