[RESOLVIDO] Módulo que inverte vetor!

static void Inverte_Vet (int n, int v[]) { int aux; for(int i = 0; i < n/2; i++) { for(int j = (n-1); j > n/2; i--) { aux = v[i]; v[i] = v[j]; v[j] = aux; } } }

Não sei como faço…

O erro:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at L05_Q09_Mod_Inverte_Vetor.Inverte_Vet(L05_Q09_Mod_Inverte_Vetor.java:10)
at L05_Q09_Mod_Inverte_Vetor.main(L05_Q09_Mod_Inverte_Vetor.java:29)
Java Result: 1

  1. Não escreva em letras maiúsculas. É indelicado e contra as regas do forum.
  2. Não escreva AJUDA, URGENTE ou coisas do tipos, não comove ninguém e afasta as pessoas.
  3. Esse post tratou sobre isso, http://www.guj.com.br/java/287178-converter-array-em-vetor-unidimensional

ok vou mudar :smiley:

[quote=Hebert Coelho]1) Não escreva em letras maiúsculas. É indelicado e contra as regas do forum.
2) Não escreva AJUDA, URGENTE ou coisas do tipos, não comove ninguém e afasta as pessoas.
3) Esse post tratou sobre isso, http://www.guj.com.br/java/287178-converter-array-em-vetor-unidimensional[/quote]

Já mudei eu não sabia mais tipo o que eu quero é isso:

tipo dados os valores 1, 2, 3, 4, 5 por exemplo o vetor depois de passar pelo módulo de inversão me devolva: 5, 4, 3, 2, 1…

Não estou conseguindo fazer, e continua sendo urgente, e não posso usar outro vetor na questão…
É que agora que estou aprendendo Java e módulos tb.

Quase isso. O que é esse “n”?

Você só precisa de 1 “for” e não 2.

int i = 0; int j = vetor.length - 1; int tmp; for (i = 0 ; i < j ; i++) { tmp = vetor[j]; vetor[j] = vetor[i]; vetor[i] = tmp; j--; }

[quote=felipeaps]Quase isso. O que é esse “n”?

Você só precisa de 1 “for” e não 2.

int i = 0; int j = vetor.length - 1; int tmp; for (i = 0 ; i < j ; i++) { tmp = vetor[j]; vetor[j] = vetor[i]; vetor[i] = tmp; j--; }

[/quote]

era o tamanho do vetor
noa outra classe ele recebia o que o j recebeu

n = v.length;

Só não tinha o -1 pq eu ia colocar n-1…

Mais obrigada, funcionou! Valeu…

Terminei assim:

public class L05_Q09_Mod_Inverte_Vetor { static void Inverte_Vet (int tam, int v[]) { int aux; for (int i = 0 ; i&lt;tam ; i++) { aux = v[tam]; v[tam] = v[i]; v[i] = aux; tam--; } } }

Funcionou agora…
>