GeraProva GeraProva Provas com IA para professores do Brasil
Matemática2ª sérieBNCC EM13MAT405Difícil⏱ longo

Elabore um algoritmo (pseudocódigo ou código em Python) que, dada uma amostra de números inteiros, construa…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13MAT405

Utilizar conceitos iniciais de uma linguagem de programação na implementação de algoritmos escritos em linguagem corrente e/ou matemática.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Elabore um algoritmo (pseudocódigo ou código em Python) que, dada uma amostra de números inteiros, construa uma tabela de frequências contendo: valor, frequência absoluta, frequência relativa e frequência acumulada; e ainda gere um histograma simples (texto ou gráfico). No enunciado, descreva como trata valores ausentes, a ordenação dos valores e estime a complexidade temporal do método. Aplique sua solução à amostra: [3, 1, 2, 3, 4, 2, 3, 1].

✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.

Resposta esperada

Resposta modelo — abordagem e solução exemplo: 1) Estratégia: contar ocorrências com um dicionário (hash map), ignorar valores ausentes (None/NaN) e, ao final, ordenar as chaves para apresentar a tabela e o histograma. Complexidade: contagem O(n); ordenação das chaves O(k log k) onde k é o número de valores distintos; custo total O(n + k log k) (pior caso k˜n ? O(n log n)). 2) Pseudocódigo: - entrada: lista A - remover/ignorar valores nulos de A - criar mapa contagens vazio - para cada x em A: contagens[x] += 1 - total = comprimento de A - chaves = lista ordenada de contagens.keys() - freq_acumulada = 0 - para v em chaves: abs = contagens[v] rel = abs / total freq_acumulada += rel imprimir linha: v, abs, rel (arred.), freq_acumulada (arred.) - gerar histograma simples: para cada v em chaves imprimir v + '|' + '*' * round(abs * escala) 3) Exemplo em Python (conciso): A = [3,1,2,3,4,2,3,1] A = [x for x in A if x is not None] from collections import Counter c = Counter(A) total = len(A) keys = sorted(c.keys()) acc = 0.0 for v in keys: abs_f = c[v] rel = abs_f / total acc += rel print(f"{v}\t{abs_f}\t{rel:.3f}\t{acc:.3f}") # Histograma ASCII scale = 10 / max(c.values()) for v in keys: bars = '*' * int(c[v] * scale) print(f"{v}: {bars} ({c[v]})") 4) Saída esperada para a amostra: Valor Abs Rel Acum 1 2 0.250 0.250 2 2 0.250 0.500 3 3 0.375 0.875 4 1 0.125 1.000 Histograma (ex.): 1: ***** (2) 2: ***** (2) 3: ******* (3) 4: ** (1) Observações: escolher escala do histograma para legibilidade; para grandes amostras usar binning (classes) e/ou bibliotecas (matplotlib/pandas) para gráficos; se preferir imputar valores ausentes, justificar método e recalcular total.

Explicação

A solução apresentada utiliza um dicionário para contar as ocorrências de cada número, garantindo eficiência na contagem e simplicidade na manipulação dos dados. A ordenação das chaves permite a apresentação clara da tabela de frequências, enquanto o histograma textual proporciona uma visualização intuitiva das frequências absolutas. A abordagem também considera a complexidade temporal, garantindo que o algoritmo seja escalável e eficiente para diferentes tamanhos de amostras.

Raio-X da questão

Dificuldade Difícil
Bloom Criar
Leitura alto
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade multipla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

tabela de frequências

📌 Objetivo

avaliacao

🧱 Pré-requisitos

estruturas de dados · algoritmos básicos

📚 Reveja

Revisar conceitos de frequência absoluta, relativa e acumulada.

⚠️ Erro mais comum

O aluno pode esquecer de incluir a frequência relativa ou acumulada na tabela, focando apenas na frequência absoluta.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

criatividade

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de Leitura e interpretação de tabelas e gráficos (de colunas ou barras simples ou múltiplas) referentes a variáveis categóricas e variáveis numéricas

🔎 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

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.