Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: crisnar456 en 15 de Noviembre 2014, 20:21

Título: vectores principiante en java (netbeans) comparar si son iguales dos vectores
Publicado por: crisnar456 en 15 de Noviembre 2014, 20:21
hola me pueden ayudar con un algoritmo donde creo 2 vectores de 5 elementos y tengo que determinar si son iguales o no ?

muchas gracias
Título: Re:ayuda vectores para un principiante en java (netbeans)
Publicado por: Sixtoex en 16 de Noviembre 2014, 10:34
Pero intentalo tu ¿que mejoraras tu si nosotros te ponemos el código? lo ves y ya... pero no lo intentastes ni siquiera una vez.


Aquí tienes el ejercicio :P para la proxima vez pon el código  ;)

Tampoco dices si son elementos de algun tipo, así que te lo pongo con tipo int  :-X
Como son 5 y nunca va cambiar la LONGITUD del array, pues no hace falta capturarla, si no tendrías que hacer un algortimo o utilizar una método que te permita capturar la longitud.

Cualquier duda del proyecto me lo dices por aquí

Código: [Seleccionar]
public class igualarArray {

public static void main(String args[])
{
byte[] elemento_uno = {3,5,6,7,8};
byte[] elemento_dos = {1,5,6,7,8};
byte comparacion = 0;

for(int i = 0; i < 5;i++)
{

if(elemento_uno[i] == elemento_dos[i])
{
comparacion++;

}
if(comparacion == 5)
{
System.out.println("Los dos vectores son iguales");

}



}
if(comparacion < 5)
{
System.out.println("Los dos vectores son distintos");

}

}

}



Título: Re:ayuda vectores para un principiante en java (netbeans)
Publicado por: crisnar456 en 16 de Noviembre 2014, 16:07
si amigo que pena es que soy nuevo en este foro ,mira resulta que el ejercisio es que uno propone los n elementos de ambos arreglos y gracias a tu ayuda me funciono. pero cuando ingreso 2 vectores con elementos iguales pero en diferente posicion me dise que son distintos ej a[5,2] b[2,5] como soluciono esto gracias.

Código: [Seleccionar]

import java.util.Scanner;

public class igualarArray {

public static void main(String args[])
{
int tamA, tamB,i,comparacion = 0;
        int A[], B[];
       
        Scanner sc = new Scanner(System.in);
        System.out.println("Ingrese el tamaño del vector  A: ");
        tamA=sc.nextInt();
        System.out.println("Ingrese el tamaño del vector B: ");
        tamB=sc.nextInt();
       
        A = new int[tamA];
        B = new int[tamB];
       
       for(i=0;i<tamA;i++)
           
       {
        System.out.println("digite digito");
        A[i]=sc.nextInt();
       }
        for(i=0;i<tamA;i++)
           
       {
        System.out.println("digite digito");
        B[i]=sc.nextInt();
       }
for(i = 0; i < tamA;i++)
{
if(A[i] == B[i])
{
comparacion++;

}
if(comparacion == tamA)
{
System.out.println("Los dos vectores son iguales");

}



}
if(comparacion < tamA)
{
System.out.println("Los dos vectores son distintos");

}

}

}
Título: Re:ayuda vectores para un principiante en java (netbeans)
Publicado por: Sixtoex en 16 de Noviembre 2014, 16:40
Para eso tendrías que recorrer el vector uno y comparar uno a uno con el vector dos(esto lo podrías hacer con for y IF), si tengo tiempo te lo hago  :P
Título: Re:ayuda vectores para un principiante en java (netbeans)
Publicado por: crisnar456 en 17 de Noviembre 2014, 14:34
ok amigo si me podrias ayudar te agradeceria, es que que ando un poco enredadado con el recorrido y comparacion de un vector
Título: Re:ayuda vectores para un principiante en java (netbeans)
Publicado por: Sixtoex en 17 de Noviembre 2014, 16:51
ok amigo si me podrias ayudar te agradeceria, es que que ando un poco enredadado con el recorrido y comparacion de un vector

Toma, creo que ya funciona, te  aconsejo que resumas los problemas, lo haces lo mas chico que prueba y vas de menos a mas dificil. Creo que esta vez esta perfecto para lo que buscas, por cierto perdón por tardar, ya que andaba ocupado 8)

Código: [Seleccionar]
import java.util.*;
public class igualarArray {

public static void main(String args[])
{
int[] elemento_uno = {5,1,6,7,3};
int[] elemento_dos = {6,1,7,5,3};
int comparacion = 0;
int constante  = 0;
int cont = 0;
Random rnd = new Random();
int valorDado = rnd.nextInt(999999999);
int finaly = 0;

for(int i = 0; i < 5;i++){
finaly++;
if(comparacion == 5){
System.out.println("Si son iguales");
return;
}
if(comparacion < 5 && finaly >= 16){
System.out.println("No son iguales");
return;
}


if(cont > 4){
cont = 0;
constante++;
}
if(elemento_uno[constante] == elemento_dos[cont]){
comparacion++;
elemento_dos[cont] = valorDado;
constante++;
cont = -1;
}
cont++;
if(i ==4){
i = 0;

}

}






}

}

Nota: Casi se me olvida!, el random lo puse simplemente para prevenir y que no se repita ningun numero una vez analizado, así no existe 2 posiciones distintas con el mismo numero en el vector 2, y con lo cual comparacion no aumentaria 2.

A lo mejor no lo vas a entender, es código de otra persona, mi consejo es que cojas el debugger, si no sabes lo que es busca por google, pon Java debugg  "IDE", Donde IDE evidentemente sera tu programa de desarrollo Ej: Netbeans
Título: Re:ayuda vectores para un principiante en java (netbeans)
Publicado por: crisnar456 en 17 de Noviembre 2014, 17:37
muchas gracias amigo