Questão FC688358
vetor = [11, 4, 7, 2, 6] n = tamanho(vetor) para (i de 0 até (n ‑ 2)) faça para (j de 0 até (n ‑ 2 ‑ i)) faça se vetor[j] > vetor[j + 1] então temp = vetor[j] vetor[j] = vetor[j +
Algoritmos e Lógica de Programação
QUADRIX · 2025
vetor = [11, 4, 7, 2, 6]
n = tamanho(vetor)
para (i de 0 até (n ‑ 2)) faça
para (j de 0 até (n ‑ 2 ‑ i)) faça
se vetor[j] > vetor[j + 1] então
temp = vetor[j]
vetor[j] = vetor[j + 1]
vetor[j + 1] = temp
fim se
fim para
fim para
escreva(vetor)
Com base nesse algoritmo, desenvolvido em pseudocódigo, assinale a opção que apresenta corretamente o resultado de “escreva(vetor)”.
- [4, 7, 2, 6, 11]
- [2, 4, 7, 6, 11]
- [2, 4, 6, 7, 11]
- [4, 2, 6, 11, 7]
- [11, 7, 6, 4, 2]
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
O algoritmo implementa o método de bubble sort, que compara pares adjacentes e realiza trocas para ordenar em ordem crescente. A variável \(n\) é o tamanho do vetor e os laços aninhados garantem que, a cada iteração do laço externo, o maior elemento não ordenado "borbulha" para a posição correta no fim do vetor.
Para o vetor inicial [11, 4, 7, 2, 6], ocorrem trocas sucessivas em cada passo (passagem):
Passo 0: [4, 7, 2, 6, 11]
Passo 1: [4, 2, 6, 7, 11]
Passo 2: [2, 4, 6, 7, 11]
Passo 3: permanece [2, 4, 6, 7, 11]
A condição do laço interno até \(n-2-i\) evita verificar as posições já ordenadas no final. Assim, ao final da execução, o vetor ordenado é [2, 4, 6, 7, 11], que corresponde corretamente à alternativa apresentada.
Conteúdo do catálogo FC Concursos · Atualizado em