Matemática Múltipla Escolha

Construa um algoritmo que leia uma matriz quadrada de ordem n e imprima os elementos da diagonal principal.

Construa um algoritmo que leia uma matriz quadrada de ordem n e imprima os elementos da diagonal principal.

  1. int i; for (i = 0; i < n; i++) { System.out.println(matriz[i][i]); }
  2. for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { System.out.println(matriz[i][j]); } }
  3. for (i = 0; i < n; i++) { System.out.println(matriz[i][0]); }
  4. for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { System.out.println(matriz[0][j]); } }
  5. int i, j; for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { System.out.println(matriz[i][j]); } }

Resolução completa

Explicação passo a passo

A
Alternativa A

Alternativa A

A questão solicita um algoritmo para ler uma matriz quadrada e imprimir seus elementos da diagonal principal.

Conceitos Fundamentais

Para resolver esta questão, é necessário compreender dois pontos principais sobre matrizes:

  1. Matriz Quadrada: Uma matriz onde o número de linhas é igual ao número de colunas (n \times n).
  2. Diagonal Principal: São os elementos onde o índice da linha é exatamente igual ao índice da coluna. Matematicamente, para uma posição (i, j), pertence à diagonal principal quando i = j.
\text{Diagonal Principal} \Rightarrow \text{Elementos } A_{i,i}

Análise das Alternativas

Vamos analisar a lógica de cada opção apresentada na imagem:

  • Alternativa A:
  • O código lê toda a matriz corretamente usando dois loops aninhados.
  • No segundo bloco de for, ele itera apenas pela variável i (de $0$ a n-1).
  • Dentro do loop, ele imprime matriz[i][i].
  • Isso acessa as posições (0,0), (1,1), (2,2) \dots, que correspondem exatamente à definição da diagonal principal.
  • Alternativa B:
  • Imprime matriz[i][n-1-i].
  • Isso acessa as posições (0, n-1), (1, n-2) \dots.
  • Esta é a fórmula para a diagonal secundária, não a principal.
  • Alternativa C:
  • Imprime matriz[n-1-i][i].
  • Similar à B, também percorre a diagonal secundária, começando do canto inferior esquerdo.
  • Alternativa D:
  • Possui um comando condicional if(i == j) dentro de um loop que só define i. Isso tornaria o código inválido ou logicamente inconsistente sem um loop interno para j, além de ser uma abordagem desnecessariamente complexa para o objetivo.

Conclusão

A única alternativa que implementa corretamente a lógica de acessar o elemento onde o índice da linha é igual ao índice da coluna é a Alternativa A.

Resumo da lógica da solução correta:

  • Entrada: Leitura completa da matriz n \times n.
  • Processamento: Iteração simples i de $0$ a n-1.
  • Saída: Impressão de matriz[i][i].

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Matemática

Ver mais Matemática resolvidas

Tem outra questão de Matemática?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.