Considere o pseudocódigo: total := 0; para i de 1 até n faça para j de 1 até i faça total := total + 1; fim…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Considere o pseudocódigo: total := 0; para i de 1 até n faça para j de 1 até i faça total := total + 1; fim para; fim para. Em termos de n, qual é a expressão fechada para total?
- A) total = n·(n + 1) / 2
- B) total = n^2
- C) total = n^3
- D) total = n * (n - 1) / 2
- E) total = n + 1
✅ Resposta correta: alternativa A
Resolução passo a passo
- Identifique a estrutura. O laço externo faz i variar de 1 até n. Para cada valor de i, o laço interno faz j variar de 1 até i, e a cada execução do interno o total aumenta 1. Passo 2: Conte quantas vezes o incremento ocorre para cada i. Quando i = 1, o interno roda 1 vez; quando i = 2, roda 2 vezes; e assim até i = n, quando roda n vezes. Passo 3: Some todas as execuções: total = 1 + 2 + 3 + ... + n. Essa é a soma dos n primeiros números naturais, cuja expressão fechada é n(n+1)/2. Passo 4: Confira com n = 3: 1 + 2 + 3 = 6 e 3(3+1)/2 = 6, o que confirma a fórmula. Passo 5: Por que as outras estão erradas. B) n^2 daria 9 para n = 3, mas o total real é 6, pois o laço interno não roda n vezes para cada i. C) n^3 daria 27 para n = 3 e pressupõe três laços, enquanto o código tem apenas dois. D) n(n-1)/2 daria 3 para n = 3, pois deixa de contar a última parcela i = n. E) n+1 daria 4 para n = 3, mas o total cresce de forma quadrática com n, e não de forma linear. O gabarito oficial (A) está correto.
💡 Dica: Analise o pseudocódigo e identifique a soma dos números.
Alternativa por alternativa
O laço externo soma, para cada i de 1 a n, exatamente i incrementos; a soma dos inteiros de 1 a n é n(n+1)/2.
Assume que dois laços aninhados sempre resultam em n^2 execuções, sem perceber que o limite do laço interno depende de i e não é fixo em n.
Por que engana: Confundir a soma dos números inteiros com a fórmula do quadrado, resultando em total = n^2.
Associa a profundidade de aninhamento a um expoente e conclui que dois laços geram n^3, ou lê o pseudocódigo como se tivesse três laços.
Usa a fórmula da soma de 1 a n-1 em vez de 1 a n, deixando de contar a última iteração do laço externo (i = n).
Acredita que o total cresce linearmente com n, como se cada valor de i gerasse apenas uma execução, ignorando que o laço interno roda i vezes.
Raio-X da questão
análise de algoritmos
avaliacao
análise de algoritmos · soma de séries
Revisar a análise de complexidade de algoritmos e somas em laços aninhados.
Confundir a soma dos números inteiros com a fórmula do quadrado, resultando em total = n^2.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Considere o algoritmo: contador := 0; para i de 1 até n passo 2 faça contador := contador + 1; fim para. Em termos de n…
- Considere o pseudocódigo: for i from 1 to n: for j from 1 to n: if A[i] == A[j] then count ? count + 1. Qual é a…
- Considere este trecho em pseudocódigo: contador <- 0 para i de 1 até 5 faça para j de 1 até i faça contador <- contador…
- Um algoritmo compara cada par distinto de n elementos (dois laços aninhados com i<j). Em função de n, quantas…
- Um algoritmo percorre uma lista de n elementos com dois loops aninhados: para i de 1 a n: para j de 1 a n: executar…
- Um algoritmo apresenta loops aninhados: para i de 1 até m faça para j de 1 até n faça executar_acao; fim para; fim para…
🔎 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
