Autor Tema: cambiar formato de un resultado.  (Leído 2002 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado ccooppss

  • Novato
  • *
  • Mensajes: 2
  • Puntuación: 0
    • Ver Perfil
cambiar formato de un resultado.
« : 26 de febrero de 2012, 09:35:46 am »
buenas noches, tengo este script  php para calcular las combinaciones posibles sin que se repitan los números o letras dadas:

Código: [Seleccionar]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>permutar1</title>
</head>

<body>

<?php


function permutar($str)
{
 
/* Si solo tenemos un caracter, regresarlo */
 
if (strlen($str) < 2)
 {
     return array(
$str);
 }

 
/* Inicializar el arreglo a regresar */
 
$permutaciones = array();

 
/* Copiar la cadena menos el primer caracter */
 
$cola substr($str1);

 
/* Atravesar las permutaciones del substring que acabamos de crear */
 
foreach (permutar($cola) as $permutacion)
 {
   
/* Obtener la longitud de la permutación actual */
   
$longitud strlen($permutacion);

   
/* Atravesar la permutacion e insertar el primer caracter de
   la cadena original entre las dos partes y ponerlo en el arreglo
   a regresar */
   
for ($i 0$i <= $longitud$i++)
   {
     
$permutaciones[] = substr($permutacion0$i) . $str[0] . substr($permutacion$i);
   }
 }


 
/* Regresar el resultado */
 
return $permutaciones;
}



//Ejemplo:
///
  
print_r(permutar("123"));

?>


</body>
</html>



el cual  me arroja el siguiente resultado  :
Código: [Seleccionar]
Array ( [0] => 123 [1] => 213 [2] => 231 [3] => 132 [4] => 312 [5] => 321 )

pero quisiera cambiarle el formato en el que se expresa el resultado, es decir , quisiera que el resultado quedara de esta forma:

Código: [Seleccionar]
123
213
231
132
312
321


alguien que me ayude???????

Desconectado dels

  • Usuario Dedicado
  • ***
  • Mensajes: 123
  • Puntuación: 2
  • Sexo: Masculino
  • Desarrollador de software
    • Ver Perfil
    • Dels
Re:cambiar formato de un resultado.
« Respuesta #1 : 27 de febrero de 2012, 08:17:24 am »
Hola ccooppss.

Lo único que tienes que cambiar es el final, donde escribes:

Código: [Seleccionar]
print_r(permutar("123"));
cámbialo a

Código: [Seleccionar]
echo permutar("123")."<br />";
Suerte.
Desarrollador de Software

Móvil: 00584123967062
E-Mail: kevin@dels.co.ve
Gnu/Linux User: #529556
Ubuntu User number: #33551
User identica.ca: k3v1nd315
Wikipedia ID: 1821960
Wikimedia-ve ID: KDels
flickr: http://www.flickr.com/photos/k3v1nd315/
Twitter: http://twitter.com/#!/k3v1ndels
IRC freenode

Desconectado José Daniel

  • Administrador
  • Usuario Junior
  • *****
  • Mensajes: 96
  • Puntuación: 9
  • Sexo: Masculino
  • "El conocimiento humano le pertenece al mundo"
    • Ver Perfil
    • Calma en la tormenta [Seienchin]
Re:cambiar formato de un resultado.
« Respuesta #2 : 29 de febrero de 2012, 10:15:33 pm »
Hola ccooppss.

Lo único que tienes que cambiar es el final, donde escribes:

Código: [Seleccionar]
print_r(permutar("123"));
cámbialo a

Código: [Seleccionar]
echo permutar("123")."<br />";
Suerte.

Si realiza eso imprimirá: Array.

Como lo que devuelves de tu función es un arreglo, debes recorrerlo y tratarlo como tal. Puedes hacerlo a través de un foreach o un for o while (con estos dos últimos deberás indicar el índice).
Twitter: @joseayram

CodeIgniter, CakePHP, Twig and maybe... Laravel
Github

No dejes de leer: Php La Manera Correcta

"El conocimiento humano le pertenece al mundo"

Desconectado dels

  • Usuario Dedicado
  • ***
  • Mensajes: 123
  • Puntuación: 2
  • Sexo: Masculino
  • Desarrollador de software
    • Ver Perfil
    • Dels
Re:cambiar formato de un resultado.
« Respuesta #3 : 01 de marzo de 2012, 07:07:37 am »
Si realiza eso imprimirá: Array.

Como lo que devuelves de tu función es un arreglo, debes recorrerlo y tratarlo como tal. Puedes hacerlo a través de un foreach o un for o while (con estos dos últimos deberás indicar el índice).

upsss..
tienes toda la razón José Daniel.

Entonces sería un ejemplo así ccooppss.

Elimina este código

Código: [Seleccionar]
print_r(permutar("123"));
y sustitúyelo por:

Código: [Seleccionar]
<?php
foreach (permutar("123") as $valor) {
echo $valor."<br />";
}
unset(
$valor); // éste último  script es aconsejable hacerlo despues de un foreach
?>

Desarrollador de Software

Móvil: 00584123967062
E-Mail: kevin@dels.co.ve
Gnu/Linux User: #529556
Ubuntu User number: #33551
User identica.ca: k3v1nd315
Wikipedia ID: 1821960
Wikimedia-ve ID: KDels
flickr: http://www.flickr.com/photos/k3v1nd315/
Twitter: http://twitter.com/#!/k3v1ndels
IRC freenode