Tecnologia da InformaçãoParadigmas e linguagens de programaçãoINEP (ENEM) 2023
ENADE
Questão de Tecnologia da Informação
Uma lista pode ser dividida em duas partes: o primeiro elemento (a cabeça da lista) e os demais elementos (sua cauda). Por exemplo, em uma lista de inteiros [1, 2, 3, 4], a cabeça dessa lista é o valor inteiro 1, enquanto sua cauda é a lista de inteiros [2, 3, 4]. Uma lista vazia é representada por []. O código a seguir define duas funções descritas em uma linguagem de programação funcional que manipulam listas de inteiros. A função enade recebe uma lista de inteiros e produz uma nova lista de inteiros. A função auxiliar é chamada pela função enade e possui dois parâmetros: um número inteiro e uma lista de inteiros. Essa função produz uma lista de inteiros. enade :: [Int] -> [Int] enade [] = [] enade (cabeca:cauda) = auxiliar cabeca (enade cauda) auxiliar :: Int -> [Int] -> [Int] auxiliar x [] = [x] auxiliar x (cabeca:cauda) | (x `mod` 2 == 0) = x:cabeca:cauda | otherwise = cabeca:auxiliar x cauda Considerando o código apresentado, é correto afirmar que se a função enade for executada recebendo como parâmetro de entrada a lista [1, 2, 3, 4, 5, 6, 7, 8], o resultado será
Mais questões de Paradigmas e linguagens de programação
- Legalle 2026Na implantação de um novo sistema de prontuário eletrônico, a equipe de TI avaliou duas soluções de software desenvolvidas em linguagens distintas: uma compilada e outra interpret…
- FAPEC 2026Considere os conceitos básicos de programação estruturada. Qual das características é fundamental para garantir a legibilidade, a manutenção e a modularidade de um programa escrit…
- FGV 2026O XOQDOQ é um modelo computacional clássico de dispersão atmosférica, desenvolvido para calcular rotineiramente a razão entre concentração média de efluentes radioativos e a taxa…
- Legalle 2026No contexto do desenvolvimento de sistemas em Java, um Analista de Sistemas está analisando o funcionamento interno da JVM (Java Virtual Machine) para otimizar o desempenho de uma…
- Instituto AOCP 2026Em compiladores, a otimização de código busca melhorar o desempenho do programa sem alterar seu resultado. Entre as técnicas de otimização de tempo, uma delas consiste em expandir…
Questão de prova oficial, com o gabarito definitivo publicado pela banca. Reproduzida para fins de estudo.
