Questão FC374701
Observe o pseudocódigo a seguir: 1. 2. var 3. a, b : inteiro 4. x : vetor[1..10] de inteiro 5. 6. procedimento questao( var a, b : inteiro ) 7. var aux : inteiro 8. inicio 9. aux <
Algoritmos e Lógica de Programação
Instituto Consulplan · 2023
Observe o pseudocódigo a seguir:
1.
2. var
3. a, b : inteiro
4. x : vetor[1..10] de inteiro
5.
6. procedimento questao( var a, b : inteiro )
7. var aux : inteiro
8. inicio
9. aux <- a
10. a <- b
11. b <- aux
12. fimprocedimento
13.
14. inicio
15. aleatorio 0,100,3
16. para a de 1 ate 10 faca
17. leia(x[a])
18. fimpara
19.
20. para a de 1 ate 10 faca
21. para b de 1 ate 9 faca
22. se x[b] > x[b+1] entao
23. questao(x[b], x[b+1])
24. fimse
25. fimpara
26. fimpara
27.
28. para a de 1 ate 10 faca
29. escreval(a:3," - ", x[a])
30. fimpara
31. fimalgoritmo
Trata-se do seguinte tipo de ordenação de dados:
- Merge.
- Bubble Sort.
- Selection Sort.
- Insertion Sort.
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
Trata‑se do algoritmo Bubble Sort. A estrutura de dois laços aninhados percorre o vetor repetidamente comparando elementos adjacentes e, quando necessário, realiza a ordenação.
No trecho relevante, o laço externo repete as passagens e o laço interno percorre índices b de 1 a 9 fazendo a comparação x[b] > x[b+1]. Sempre que a condição é verdadeira, chama‑se o procedimento de troca.
O procedimento recebe os parâmetros com var, ou seja, por referência, e usa a variável auxiliar aux para efetuar a troca in‑place entre x[b] e x[b+1]. Assim, o maior elemento "borbulha" para o fim do vetor em cada passagem.
Portanto, o código implementa o clássico Bubble Sort, cujo comportamento envolve múltiplas trocas adjacentes até que o vetor esteja ordenado (complexidade no pior caso \(O(n^2)\)).
Conteúdo do catálogo FC Concursos · Atualizado em