Pular para o conteúdo

Inverção de matrizes [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Inverção de matrizes [RESOLVIDO]

Enviado em 29/10/2011 - 18:01h

Olá pessoal, estou precisado fazer o seguinte exercicio:

Gera elementos para uma matriz A tipo vetor, igualar a uma matriz B de mesma dimensão, todos os valores.
Depois inverter a matriz B, ou seja, o elemento do indice A[0] sera o B[10], numa dimensão de 10 por exemplo.

Usei o seguinte método:

public class Exercicio4ListaA {

public static void main(String[] args){
int a[], b[];

a = new int[9];
b = new int[9];

for(int i = 0; i < a.length; i++){
a[i] = (int) (Math.random() * 100);
b[i] = a[i];
System.out.println(a[i] + " " + b[i]);
}
int i = 0;

System.out.println("Números invertidos: ");
int j = 9;
while(i < a.length){
b[j] = a[i];

System.out.println("A: " + a[i] + "B: " + b[j]);
i++;
j--;
}
}
}


Mas não funcionou, o que esta dentro do while nem executou, deu um erro:
Números invertidos:
"at Lista0.Exercicio4ListaA.main(Exercicio4ListaA.java:29)
Java Result: 1"

o que estou fazendo de errado?
Usei while, pq tentei for e nao deu também.

Responder tópico

2. Re: Inverção de matrizes [RESOLVIDO]

Enviado em 29/10/2011 - 21:38h

O problema é o seguinte.
O vetor tem 9 elementos

após a linha que você mostra os números invertidos você faz:
int j = 9;

Ai depois você corre os elementos usando o j, por exemplo b[j], acontece que o vetor b[] tem 9 elementos e na hora de referenciar o ultimo elemento você deve considerar que o primeiro começa com 0, então o nono elemento tem que ser referenciado por 8.

Abraços

3. Re: Inverção de matrizes [RESOLVIDO]

Enviado em 31/10/2011 - 14:36h

Consegui amigo.
Fiquei um tempão olhando pra esse código até descobrir que era isso.
Mas obrigado pela ajuda.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder