Seja este programa escrito em Javapublic class teste{ public...
Seja este programa escrito em Java
|
public class teste { public static void main(String[] args) { int n = 5; int v[] = new int [n]; int i,j=2,g; for (i=0; i<n; i++) { for (g=j-2; g<3; g++) { if (g==i) { v [i] = i;} else { v [i] = 4;}}} for (i=0; i<n; i++) {System.out.printf ("%d", v[i]);}}} |
Logo, a sua execução produz como resultado
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa Correta: D
Vamos entender por que a alternativa correta é a D. O programa dado é um exemplo clássico de laços aninhados em Java, onde o objetivo é preencher um vetor v com valores baseados em certas condições.
No início do programa, temos a declaração e inicialização de variáveis:
int n = 5;- Define o tamanho do vetorvcomo 5.int v[] = new int[n];- Cria um vetorvde inteiros com 5 posições.int i, j = 2, g;- Declara as variáveis inteirasi,j(inicializada com 2) eg.
Vamos analisar o primeiro laço for:
for (i = 0; i < n; i++) {
Dentro deste laço, temos outro laço for:
for (g = j - 2; g < 3; g++) {
Esse laço interno itera de g = 0 até g < 3. Dentro deste laço, há uma condição if:
if (g == i) { v[i] = i; }
Se g for igual a i, o valor de v[i] será igual ao valor de i. Caso contrário,
else { v[i] = 4; }
Ou seja, se g não for igual a i, v[i] será igual a 4. Vamos ver como isso se aplica a cada iteração:
Para i = 0:
- g = 0 -> (g == i -> v[0] = 0)
- g = 1 -> (g != i -> v[0] = 4)
- g = 2 -> (g != i -> v[0] = 4)
Para i = 1:
- g = 0 -> (g != i -> v[1] = 4)
- g = 1 -> (g == i -> v[1] = 1)
- g = 2 -> (g != i -> v[1] = 4)
Para i = 2:
- g = 0 -> (g != i -> v[2] = 4)
- g = 1 -> (g != i -> v[2] = 4)
- g = 2 -> (g == i -> v[2] = 2)
Para i = 3:
- g = 0 -> (g != i -> v[3] = 4)
- g = 1 -> (g != i -> v[3] = 4)
- g = 2 -> (g != i -> v[3] = 4)
Para i = 4:
- g = 0 -> (g != i -> v[4] = 4)
- g = 1 -> (g != i -> v[4] = 4)
- g = 2 -> (g != i -> v[4] = 4)
Agora, vamos imprimir os resultados com o segundo for:
for (i = 0; i < n; i++) { System.out.printf("%d", v[i]); }
Os valores do vetor v serão impressos na ordem: 4 4 2 4 4, confirmando que a alternativa correta é mesmo a D.
Explicando as alternativas incorretas:
A - 2 4 4 4 4: Incorreta porque v[0] não é 2, e sim 4.
B - 4 2 4 4 4: Incorreta porque v[1] não é 2, e sim 4.
C - 4 4 4 2 4: Incorreta porque v[3]} não é 2, e sim 4.
D - 4 4 2 4 4: Correta porque todos os valores foram atribuídos corretamente de acordo com a lógica do programa.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo