Trabalhando com Arrays

Estudando pela net me deparei com o seguinte exercicio que não obtive resultado, por favor alguém poderia me ajudar?

Crie uma aplicação Java que declare dois vetores V_IN e V_OUT, leia valores numéricos para V_IN, de tamanho
5. Faça com que o programa ordene V_IN em ordem crescente e guarde os valores nas primeiras posições de
V_OUT que tem tamanho 10. As outras posições de V_OUT deverão ser preenchidas com os valores de V_IN na
ordem decrescente. Tanto a ordenação de V_IN quanto o preenchimento de V_OUT devem ser feitos por
métodos. Após preenchido, o vetor V_OUT, deverá ser impresso na tela.

[quote=Crivelli]Estudando pela net me deparei com o seguinte exercicio que não obtive resultado, por favor alguém poderia me ajudar?

Crie uma aplicação Java que declare dois vetores V_IN e V_OUT, leia valores numéricos para V_IN, de tamanho
5. Faça com que o programa ordene V_IN em ordem crescente e guarde os valores nas primeiras posições de
V_OUT que tem tamanho 10. As outras posições de V_OUT deverão ser preenchidas com os valores de V_IN na
ordem decrescente. Tanto a ordenação de V_IN quanto o preenchimento de V_OUT devem ser feitos por
métodos. Após preenchido, o vetor V_OUT, deverá ser impresso na tela.[/quote]

Para declarar o os arrays use:

int[] V_IN = new int[5];
int[] V_OUT = new int[10];

Para acessar uma determinada posição:

V_IN[2] = 10;

Lembrando que o indice do array começa em 0, logo, V_IN vai de 0…4

Acho que com essas informações você já consegue “trabalhar com arrays”. Agora é com você para elaborar o código. Caso tenha outra dúvida, por favor poste o que você tentou fazer. Sem postar uma tentativa dificilmente alguém vai te ajudar.

[]'s

Tentei fazer como no código abaixo, porém não consigo chamar as funcoes e eu qria saber como fazer tipow assim V_AUX = ordemDecrescente( V_IN ) e uma dica de como passar e retornar arrays aos métodos.

Obrigado!

[code]import java.util.*;

public class exercicio04 {

public void ordemDecrescente( int[] vet)
{
	int aux = 0;
	int j = vet.length;
	for(int i = 0; i < vet.length; i++)
	{
		aux = vet[i];
		vet[i] = vet[j];
		vet[j] = aux;
	}
}

public void ondemCrescente( int[] vet)
{
	Arrays.sort( vet );
}

public static void main(String[] args) {
    
    int[] V_IN = new int[5];
    int aux;
    Scanner input = new Scanner( System.in );
    
    System.out.println("Digite os valores: ");
    for(int i = 0 ; i < V_IN.length ; i++)
    {
    	aux = input.nextInt();
    	V_IN[i] = aux;
    }
    
    ordemDecrescente( V_IN );
    
}

}[/code]

Boa noite Colegas !

public int[] ordemDecrescente( int[] vet)

[]s

Seria isso aqui?

[code]
import java.util.Arrays;

public class Teste {
public static int[] geraOut(int[] in) {
int out[] = new int[in.length*2];
for (int i = 0; i < in.length; i++) {
out[i] = in[i];
out[i+in.length] = in[in.length-1 - i];
}
return out;
}

public static void println(String name, int[] array) {
    System.out.print(name + ": ");
    for (int num : array)
        System.out.print(num + " ");
    System.out.println();
}

public static void main(String[] args) {
    int[] V_IN = {5,3,1,2,4};
    println("V_IN (antes)", V_IN);
    Arrays.sort(V_IN);
    int[] V_OUT = geraOut(V_IN);
    println("V_IN (depois)", V_IN);
    println("V_OUT", V_OUT);
}

}[/code]

Já vi enunciados mal escritos. Mas esse aí está tão ruim que chega a ser digno de uma prova de certificação!

Para chamar métodos é necessário um objeto da classe no qual os métodos foram definidos. Caso você não queira usar um objeto para chamar os métodos você precisará declarar os métodos como static, assim esses métodos poderão ser chamados sem ter um objeto da classe instanciado, como o ViniGodoy fez.

O que por sinal, é uma péssima prática. O ideal é ter a menor quantidade de métodos estáticos possível.

Obrigado!! Era exatamente oque eu gostaria de saber…

vlw galera!!

[quote=Crivelli]Tentei fazer como no código abaixo, porém não consigo chamar as funcoes e eu qria saber como fazer tipow assim V_AUX = ordemDecrescente( V_IN ) e uma dica de como passar e retornar arrays aos métodos.

Obrigado!

[code]import java.util.*;

public class exercicio04 {

public void ordemDecrescente( int[] vet)
{
	int aux = 0;
	int j = vet.length;
	for(int i = 0; i < vet.length; i++)
	{
		aux = vet[i];
		vet[i] = vet[j];
		vet[j] = aux;
	}
}

public void ondemCrescente( int[] vet)
{
	Arrays.sort( vet );
}

public static void main(String[] args) {
    
    int[] V_IN = new int[5];
    int aux;
    Scanner input = new Scanner( System.in );
    
    System.out.println("Digite os valores: ");
    for(int i = 0 ; i < V_IN.length ; i++)
    {
    	aux = input.nextInt();
    	V_IN[i] = aux;
    }
    
    ordemDecrescente( V_IN );
    
}

}[/code]
[/quote]

Vc nunca vai conseguir chamar os métodos se não cria uma instancia da classe exercicio04 na tua aplicação…

[]'s