Ver Mensaje Individual
  #15 (permalink)  
Antiguo 22/05/2014, 16:18
joseantoniogf1
 
Fecha de Ingreso: mayo-2014
Mensajes: 13
Antigüedad: 9 años, 11 meses
Puntos: 0
Respuesta: Necesito eliminar lo que coinda en dos arrays

Cita:
Iniciado por joseantoniogf1 Ver Mensaje
crei que ya estaba solucionado pero me sigue haciendo cosas que no esperaba. haber me explicare, tengo hecho un programa que el usuario le mete una serio de valores los que sean... y yo e hecho un programa para que cree un array con la descomposicion en numeros primos de dos numeros, es decir si el resultado es 32/30 los arrays quedarian asi:
array1 = (2, 2, 2, 2, 2);
array2 = (2, 3, 5);

con estos arrays quiero sacar el maximo comun divisor, para ello necesito eliminar eliminar lo que se repita entre los dos arrays. lo unico que se repite en este caso es un 2. pues eliminaria y quedaria asi:
array1 = (2, 2, 2, 2);
array2 = (3, 5);

que luego los multiplico entre si y me daria de resultado 16/15 para que entendais quiero que me simplifique una fraccion
ahora mismo lo tengo asi:



$intersec = array_intersect($descomNumerador,$descomDenominado r);

foreach ($descomNumerador as $key=>$val)
if(in_array($val,$intersec)){
unset($descomNumerador[$key]);
unset($descomDenominador[array_search($val,$descomDenominador)]);

}

me e fijado que si los arrays vienen con:
$descomNumerador= array( 2, 2, 2, 2, 2);
$descomDenominador= array( 2, 3, 5);

me los devuelve asi:
$descomNumerador= array( );
$descomDenominador= array( 3, 5);


cuando el resultado quiero que sea:
$descomNumerador= array( 2, 2, 2, 2);
$descomDenominador= array( 3, 5);