Arrays Iguais Resolvido

6 respostas
van_bommel

iaee gaaleraaa , essa é a melhor forma de fazer ?

/*
32) Desenvolva classe e métodos, necessários para receber dois Arrays de 10 números quaisquer cada e informar se
essas duas seqüências são iguais ou diferentes. Quando as duas seqüências forem diferentes, deverá ser informado o
índice onde começam a se diferenciar.

*/



public class Exer32 {

 public static String verificarArrays( int [ ] array , int [] array2 ){
    String elementoDiferente = "Os arrays são diferentes \n";
     String iguais =  " *** Os arrays são iguais *** \n";
    for ( int i = 0 ; i < array.length ; i ++ ){
        if ( array[i] != array2[i] ) {
    
    elementoDiferente +=  " O º" + array[i] + " elemento  do array1 é diferente do º "+ array2[i] +"  elemento do array2 "; 
     return elementoDiferente ;
    
    }
                
       
      
     }
    
           
      return  iguais ;
     

 
}    
    
    


}




import javax.swing.*;

public class TestaExer32 {

  public static void main(String[] args){
      int [ ] array = new int [5];
      int [ ] array2 = new int [5];
      
      
      for ( int i = 0 ; i < array.length ; i ++ ) {
       
      String aux = JOptionPane.showInputDialog ( null, " insira os elementos do array1" );
     
      array[i] = Integer.parseInt ( aux );
   

      }
        for ( int i = 0 ; i < array2.length ; i ++ ) {
         String aux2 = JOptionPane.showInputDialog ( null, " insira os elementos do array2" );  
            array2[i] = Integer.parseInt( aux2);
          }  
      
      
      String saida1= "" ;
      String saida2= " ";
      for ( int i = 0 ; i <  array.length ; i ++ ) {
      
      saida1 = saida1 + array[i] ;
      saida2 = saida2 + array2[i];
      
      }
      
      
      JOptionPane.showMessageDialog ( null,  "Elementos array1 " +  "{" +saida1+"}\n"+ "Elementos array2 {"+ saida2 +"}\n"  + Exer32.verificarArrays( array ,array2 ) ) ;
    
    
    
    
    
    
    
    
    
    
    
  }

}

6 Respostas

A

Opa!

Aparentemente correto, só tome cuidado com um detalhe:

elementoDiferente +=  " O º" + array[i] + " elemento  do array1 é diferente do º "+ array2[i] +"  elemento do array2 ";

Na sequencia acima você está mostrando o valor do array que é diferente, e não o índice.
Tente desse jeito:

elementoDiferente +=  " O " + (i+1) + "º elemento  do array1 é diferente do  "+ (i+1) +"º  elemento do array2 ";

[]'s

Andre_Fonseca

oi

tem uma forma mais facil de fazer veja se serve

int[] arr1 = {1,2,3};
int[] arr2 = {1,2,3};
		
if (Arrays.equals(arr1,arr2)) {
    System.out.println("iguais");
}

veja mais aqui

A

e até mais simples ^^
não conhecia essa classe Arrays :wink:

só mais uma coisa:
usando esse metodo pra comparar, caso sejam diferentes, terá que percorrer o array da mesma forma,
para saber onde começa a ser diferente.

[]'s

van_bommel

podes cree…rs isso q da … não ler o exer

A

tss…

esperamos ter ajudado :wink:
qualquer duvida posta aew ^^

[]'s

van_bommel

valeww…simpatiaa…

Criado 10 de agosto de 2009
Ultima resposta 10 de ago. de 2009
Respostas 6
Participantes 3