Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/06/2012, 19:19
gobodeath
 
Fecha de Ingreso: marzo-2012
Mensajes: 75
Antigüedad: 12 años, 8 meses
Puntos: 3
Pregunta que error tengo en este método ?

Hola necesito ayuda con un programa, que es una calculadora que hace todo a traves de arreglos, es decir, la suma la resta la multiplicación.... se hace a punta de arreglos, como nos enseñaron en la escuela a pedal!

y pués tengo el método y más o menos tengo la idea pero no me funciona, el arreglo que me da de resultado siempre es 0
porfavor ayudenme ya me estoy comenzando a frustrar....


miren este es el método

Código:
public long[] multiplicarArrays(long[] arreglo1, long[] arreglo2){
          
          
          
          
          //Creamos el arreglo que tendrá el resultado
          //con el tamaño del arreglo 1 que se supone que tiene los mismos elementos que el arreglo2
          long arrayRes[] = new long[(arreglo1.length*arreglo1.length)];
        
          int cont=0;
          
          for (int i=0;i<arreglo1.length;i++ )
          {
              int Por10=1;
               
              for(int j=0;j<arreglo2.length;j++)
              {
                 
                  Por10=1*Por10;
                  
                  arrayRes[cont]=arreglo1[i]* arreglo1[j] * Por10;
                  
                  System.out.println(String.valueOf(arreglo1[i])+"*"+String.valueOf(arreglo2[j])+"*"+String.valueOf(Por10)+"="+String.valueOf(arrayRes[cont]));
                  
                  Por10*=10;
                  
                  cont ++;
              }
              
              //Incrementamos variables
              
              Por10*=10;
          }
            
          return arrayRes;
      }
pues aquí lo tienen, no sé que tengo mal ni porqué rayos me da cero siempre que lo ejecuto....

si no lo entienden bien esta fue la lógica que utilicé

si vamos amultiplicar 83*52 = ( ( 2*3 ) + (2 * 8 * 10) ) + ( (5 * 3 * 10 )+ (5 * 8 * 100 ) ) = 6 + 160 + 150 + 4000 = 4316

o por ejemplo 521*32= (2*1) + (2*2*10) + (2*5*100) + (3*1*10) + (3*2*100) + (3*5*1000) = 16672


ahora yo tengo un Syso dentro del ciclo que me imprime el resultado por posicion del arreglo, y siempre dá cero no se que error tengo en el método ayuda porfavor

si yo estoy mal como lo arían ustedes ?

Última edición por gobodeath; 13/06/2012 a las 19:24