Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/11/2011, 14:28
arturocaz
 
Fecha de Ingreso: noviembre-2011
Mensajes: 5
Antigüedad: 12 años, 6 meses
Puntos: 0
Problema con métodos en java

Hola amigos, verán, tengo que hacer un programa que elimine elementos repetidos de un arreglo con un algoritmo que nos puso el maestro (tiene que ser éste, no puede ser otro =S )

Bueno, el caso es que no sé como hacerlo, porque no sé como declarar los métodos y al momento del return del POS no me manda nada =(

Si me pueden ayudar se los agradeceré enormemente

//Elimina elementos repetidos de un arreglo
import java.util.*;

public class asd
{
public static void main (String args [])
{
Scanner leer = new Scanner (System.in);

asd llamar = new asd();

System.out.print ("Cuantos números se van a leer: (de 1 a 10)");
int N = leer.nextInt();

while (N<1 || N>10)
{
System.out.print ("Cuantos números se van a leer: (de 1 a 10))");
N = leer.nextInt();
}

int K = 0;
int[] VECTOR = new int[10];

System.out.print ("Introduzca número "+K);
VECTOR[K] = leer.nextInt();

while (K<N-1)
{
System.out.print ("Introduzca número "+(K+1));
int Num = leer.nextInt();

llamar.Inserta_ordenado_con_repetición(VECTOR, Num, K, N, 0);
K = K+1;
}

System.out.print ("Arreglo de números enteros con elementos repetidos");

for (int I=1; I<N-1; I++)
{
System.out.print (VECTOR[I]);
}
K = 0;
while(K<N-1)
{
if(VECTOR[K] == VECTOR[K+1])
{
N = N-1;
for(int I=(K+1); I<N-1; I++)
{
VECTOR[I] = VECTOR[I+1];
}
}
else
K = K+1;

}

System.out.print ("Arreglo de números enteros sin elementos repetidos");
for (int I=0; I<N-1; I++)
{
System.out.print (VECTOR[I]);
}
}



//Insertamos los elementos
public void Inserta_ordenado_con_repetición(int[] VECTOR, int num, int K, int N, int POS)
{

int Y = 0;

Busca_secuencial_ordenado(VECTOR, N, POS, num);
if (POS<0){ //No se encontró el arreglo y le asignaremos la casilla
POS = POS*(-1);
}
N = N+1;
for (int I=N; I<(POS+1); I++)
{
VECTOR[I] = VECTOR[I-1];
}
VECTOR[POS] = Y;
}

//Vemos si el elemento está ya en el arreglo
public static int Busca_secuencial_ordenado(int[] VECTOR, int N,int POS, int num)
{
int I = 0;
while (I<=N-1 && VECTOR[I]<num)
{
I = I+1;
}

if ((I>N-1)||(VECTOR[I]>num))
POS = -I; //No se encuentra en el arreglo
else
POS = I; //Se encontró en el arreglo
return POS;
}
}