How to compare, remove equal, etc. elements of two vectors in java?

1

I'm doing a java job to perform operations together, however as I'm learning now I do not know how to compare vector elements to do the following operations, union, intersection, difference, and complement, I want to do the operations after printing the second set, could someone help me how can i do this in this code. Follow the code as it is:

public static void main(String[] args) {
    Scanner scan= new Scanner(System.in);
    System.out.println("Insira seis números para o primeiro conjunto.");
    int[] var1 = new int[6];
        System.out.println("Digite o primeiro número: ");
        var1[0]= scan.nextInt();
        System.out.println("Digite o segundo número: ");
        var1[1]= scan.nextInt();
        System.out.println("Digite o terceiro número: ");
        var1[2]= scan.nextInt();
        System.out.println("Digite o quarto número: ");
        var1[3]= scan.nextInt();
        System.out.println("Digite o quinto número: ");
        var1[4]= scan.nextInt();
        System.out.println("Digite o sexto número: ");
        var1[5]= scan.nextInt();
    System.out.println("Insira mais seis números para o segundo conjunto.");
    int[] var2 = new int[6];
        System.out.println("Digite o primeiro número: ");
        var2[0]= scan.nextInt();
        System.out.println("Digite o segundo número: ");
        var2[1]= scan.nextInt();
        System.out.println("Digite o terceiro número: ");
        var2[2]= scan.nextInt();
        System.out.println("Digite o quarto número: ");
        var2[3]= scan.nextInt();
        System.out.println("Digite o quinto número: ");
        var2[4]= scan.nextInt();
        System.out.println("Digite o sexto número: ");
        var2[5]= scan.nextInt();
    System.out.println("");
    System.out.println("O primeiro conjunto é: ");
    for(int i=0; i<var1.length; i++) {
        System.out.print(var1[i]+", ");
    }
    System.out.println("");
    System.out.println("O segundo conjunto é: ");
    for(int a=0; a<var2.length; a++) {
        System.out.print(var2[a]+", ");
    }        
}

}

    
asked by anonymous 24.03.2017 / 05:10

1 answer

0

Hello, see if this helps you. It's a simple code, the way you put it. I just made a loop to read the entries (minus lines of code) and, after printing the two vectors, I did the basic operations (joining, joining, adding and subtracting). There are better ways to do this, but from what I understand, you're starting now, right? I think it's cool to focus on your problem, understand the manipulation of a vector's data, and then move on to more complex implementations using Java features.

Good luck. =)

// Sendo bem pratico e simples.
import java.util.Scanner;

class Arrays {
    public static void main(String[] args) {
        Scanner scan= new Scanner(System.in);
        System.out.println("Insira seis números para o primeiro conjunto.");
        int[] var1 = new int[6];
        for ( int i=0; i<6; i++ ) {
            System.out.println("Digite um número: ");
            var1[i]= scan.nextInt();
        }

        System.out.println("Insira mais seis números para o segundo conjunto.");
        int[] var2 = new int[6];
        for ( int i=0; i<6; i++ ) {
            System.out.println("Digite um número: ");
            var2[i]= scan.nextInt();
        }

        System.out.println("");
        System.out.println("O primeiro conjunto é: ");
        for(int i=0; i<var1.length; i++) {
            System.out.print(var1[i]+", ");
        }

        System.out.println("");

        System.out.println("O segundo conjunto é: ");
        for(int a=0; a<var2.length; a++) {
            System.out.print(var2[a]+", ");
        }

        System.out.println("\nUniao:");
        // Uniao dos dois
        int[] uniao = new int[12];
        for ( int i=0; i<6; i++ ) 
            uniao[i] = var1[i];

        for ( int i=6; i<12; i++ ) 
            uniao[i] = var2[i-6];

        for ( int i=0; i<12; i++ )
            System.out.print(uniao[i] + ", ");

        System.out.println("\nInterseccao:");
        // Interseccao dos dois
        int [] interseccao = new int[6];
        for ( int i=0; i<6; i++ ) {
            for ( int j=0; j<6; j++ ) {
                if ( var1[i] == var2[j] ) {
                    interseccao[i] = var1[i];
                }
            }
        }

        for ( int i=0; i<6; i++ )
            System.out.print(interseccao[i] + ", ");

        System.out.println("\nSoma:");
        // Soma dos dois ( x(a,b) + y(c,d) = z(a+c,b+d) )
        int [] soma = new int[6];
        for ( int i=0; i<6; i++ ) {
            for ( int j=0; j<6; j++ ) {
                    soma[i] = var1[i] + var2[i];
            }
        }

        for ( int i=0; i<6; i++ )
            System.out.print(soma[i] + ", ");

        System.out.println("\nSubtracao:");
        // Diferenca dos dois ( x(a,b) - y(c,d) = z(a-c,b-d) )
        int [] subtracao = new int[6];
        for ( int i=0; i<6; i++ ) {
            for ( int j=0; j<6; j++ ) {
                    subtracao[i] = var1[i] - var2[i];
            }
        }

        for ( int i=0; i<6; i++ )
            System.out.print(subtracao[i] + ", ");

        System.out.println("\n");
    }
}
    
24.03.2017 / 17:46