Ir ao conteúdo
  • Cadastre-se

Problema de lógica na matriz 10x10


robersoncomputer

Posts recomendados

minha matriz digitada pelo usuário nao esta sendo impressa antes estava agora nao esta mais me perdi ja nao consigo continuar, gostaria que me explicassem como troco a diagonal secundaria pela principal ? estou tentando tem mais coisas a ser feita mais primeiro me ajuda com estas duvidas assim que for terminando o código e tiver duvida posto mais alem dessa duvidas.

trocar diagonal secundaria pela principal

import javax.swing.JOptionPane;

public class Matriz_bidimen {

public static void main(String[] args) {

int matO[][] = new int[10][10];

// int matB[][] = new int[10][10];

// int cont = 0;

int temp;

String mensagem = " ";

int linha, coluna;

JOptionPane.showMessageDialog(null, "Matriz : ");

for (linha = 0; linha < 10; linha++)

for (coluna = 0; coluna < 10; coluna++) {

// cont++;

// matO[linha][coluna] = cont;

matO[linha][coluna] = Integer.parseInt(JOptionPane

.showInputDialog(null, " DIGITE VALORES DA MAT["

+ linha + "] [" + coluna + "] : "));

// mensagem = mensagem + "\n valores" + matO[linha][coluna];

// JOptionPane.showMessageDialog(null, mensagem);

}

// apresentando a matriz

for (linha = 0; linha < 10; linha++)

for (coluna = 0; coluna < 10; coluna++) {

mensagem = mensagem + "\n mat[" + linha + "][" + coluna

+ "] : " + matO[linha][coluna];

}

JOptionPane.showMessageDialog(null, "mensagem");

// troca a diagonal secundaria pela primaria

for (linha = 0; linha < 10; linha++)

for (coluna = 0; coluna < 10; coluna++) {

if (linha + coluna == 9) {

temp = matO[linha][9 ];

matO[linha][9] = // receber a diagonal principal ?

}

}

}

}

Link para o comentário
Compartilhar em outros sites

outra coisa a onde eu comentei... comentei apenas aquela linha com// nao e pra ler mesmo o que comentei e que durante o desenvolvimento eu fui testando e nao quero usar quero que o usuário digite a matriz os valores,nao quero que carregue automático... e se colocar mais uma chave da erro... o exercício pede para ler uma matriz então usuário tem de digitar os valores.

Link para o comentário
Compartilhar em outros sites

Cara, você precisará apenas de duas variáveis auxiliar (uma valendo 0) e uma variável definindo a largura da matriz...

int m = 0;
int i = matO.length;
int aux;

O comando matO.length pega o tamanho na horizontal, certo? o.õ (fiquei na dúvida...)

Feito isso, basta apenas ter uma estrutura de repetição pra inverter os números...

Tipo... A posição [0][0] com a [0][10], [1][1] com a [1][9], e por ai vai... (é isso né? o.õ)

Então...

while (i >= 0){
aux = matO[m][m];
matO[m][m] = matO[m][i];
matO[m][i] = aux;
i--;
m++;
}

Só queria que me confirmassem se não falei besteira no uso do ".length" e também sobre a matriz primária e secundária... =P

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...