Alternativa A
O problema solicita o estado final de um vetor após a execução de um laço for que realiza operações de troca entre elementos. Vamos analisar passo a passo como o algoritmo modifica os dados.
Análise do Código
1. Estado Inicial do Vetor
Primeiro, definimos os valores iniciais conforme a declaração int vet[8] = {5,1,4,2,7,8,3,6};. Os índices vão de 0 a 7.
| Índice | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| :--- | :-: | :-: | :-: | :-: | :-: | :-: | :-: | :-: |
| Valor | 5 | 1 | 4 | 2 | 7 | 8 | 3 | 6 |
2. Lógica do Laço
O laço é definido por for (ind=7; ind>=4; ind--). Isso significa que ele rodará para os valores de ind: 7, 6, 5 e 4.
Dentro do bloco, ocorre uma troca de posições clássica usando uma variável auxiliar (aux):
\text{Troca}(vet[7-ind], vet[ind])
Isso significa que, para cada índice ind, o código está trocando o valor na posição ind com o valor na posição espelhada em relação ao centro do intervalo (que vai de 0 a 7).
3. Execução Passo a Passo
Vamos simular cada rodada do loop:
- Iteração 1 (
ind = 7): - Ponto de troca: Índices $7-7=0$ e $7$.
- Troca
vet[0] (valor 5) com vet[7] (valor 6). - Novo vetor: [6, 1, 4, 2, 7, 8, 3, 5]
- Iteração 2 (
ind = 6): - Ponto de troca: Índices $7-6=1$ e $6$.
- Troca
vet[1] (valor 1) com vet[6] (valor 3). - Novo vetor: [6, 3, 4, 2, 7, 8, 1, 5]
- Iteração 3 (
ind = 5): - Ponto de troca: Índices $7-5=2$ e $5$.
- Troca
vet[2] (valor 4) com vet[5] (valor 8). - Novo vetor: [6, 3, 8, 2, 7, 4, 1, 5]
- Iteração 4 (
ind = 4): - Ponto de troca: Índices $7-4=3$ e $4$.
- Troca
vet[3] (valor 2) com vet[4] (valor 7). - Novo vetor: [6, 3, 8, 7, 2, 4, 1, 5]
Conclusão
Após o término do laço, quando ind passa a ser 3, a condição ind >= 4 torna-se falsa e o código sai do loop. O vetor resultante é exatamente:
6, 3, 8, 7, 2, 4, 1, 5
Portanto, a alternativa correta é a A.