Autor Tema: [RETO] calcular factorial  (Leído 21370 veces)

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #30 en: 25 de Agosto de 2011, 22:57:29 pm »
Vale, pero sigo esperando la solución eficiente.

como quieras, pero te la mando por mensaje privado para que el tema quede abierto

Comunidad PHPeros

Re:[RETO] calcular factorial
« Respuesta #30 en: 25 de Agosto de 2011, 22:57:29 pm »

Desconectado Physlet

  • PHPero Experto
  • *****
  • Mensajes: 822
  • Karma: 41
  • Sexo: Masculino
  • Todo es posible con esfuerzo, dedicación e interés
    • Ver Perfil
    • PanamaDev
Re:[RETO] calcular factorial
« Respuesta #31 en: 25 de Agosto de 2011, 23:01:47 pm »
Por favor, y gracias.

Desconectado Siquillote

  • PHPero Master
  • ******
  • Mensajes: 4.229
  • Karma: 179
  • Sexo: Masculino
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #32 en: 25 de Agosto de 2011, 23:02:49 pm »

como quieras, pero te la mando por mensaje privado para que el tema quede abierto

A mi también me interesaría saberlo, estoy muerto de curiosidad jaja. Es verdad eso que dicen que cada día se aprende algo nuevo, si señor.

Un saludo,
Siquillote.

#Fdo. Physlet

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #33 en: 25 de Agosto de 2011, 23:26:12 pm »
Quien se anime puede seguir pensando cómo hacerlo

Desconectado westwest

  • PHPero Master
  • ******
  • Mensajes: 2.837
  • Karma: 104
  • Sexo: Masculino
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #34 en: 25 de Agosto de 2011, 23:36:43 pm »
Yo preferiría que me enviaras la solución, porque no se me ocurre otra manera de hacerlo que no hayan dicho ya.

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #35 en: 25 de Agosto de 2011, 23:46:44 pm »
Yo preferiría que me enviaras la solución, porque no se me ocurre otra manera de hacerlo que no hayan dicho ya.

ya está, enviado

Desconectado Physlet

  • PHPero Experto
  • *****
  • Mensajes: 822
  • Karma: 41
  • Sexo: Masculino
  • Todo es posible con esfuerzo, dedicación e interés
    • Ver Perfil
    • PanamaDev
Re:[RETO] calcular factorial
« Respuesta #36 en: 26 de Agosto de 2011, 00:19:18 am »
Nada más que agregar, además de que no es un código extensible/portable/reutilizable.

-- Physlet --
0.0023460388183594 segundos
0.0024032592773438 segundos
0.0024604797363281 segundos
0.0023889541625977 segundos
0.0023889541625977 segundos

-- good --
0.0033044815063477 segundos
0.0031757354736328 segundos
0.0034189224243164 segundos
0.0033044815063477 segundos
0.0032901763916016 segundos

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #37 en: 26 de Agosto de 2011, 00:43:23 am »
Nada más que agregar, además de que no es un código extensible/portable/reutilizable.

-- Physlet --
0.0023460388183594 segundos
0.0024032592773438 segundos
0.0024604797363281 segundos
0.0023889541625977 segundos
0.0023889541625977 segundos

-- good --
0.0033044815063477 segundos
0.0031757354736328 segundos
0.0034189224243164 segundos
0.0033044815063477 segundos
0.0032901763916016 segundos

a ver, si solo vas a llamar a la función una vez, espérate esto, es algo Obvio viendo los códigos. Pero si haces por ejemplo un millón de llamadas, el tiempo debería cambiar, ya que tu programa realiza el cálculo un millón de veces y el mío solo una

Desconectado Physlet

  • PHPero Experto
  • *****
  • Mensajes: 822
  • Karma: 41
  • Sexo: Masculino
  • Todo es posible con esfuerzo, dedicación e interés
    • Ver Perfil
    • PanamaDev
Re:[RETO] calcular factorial
« Respuesta #38 en: 26 de Agosto de 2011, 01:02:36 am »
a ver, si solo vas a llamar a la función una vez, espérate esto, es algo Obvio viendo los códigos. Pero si haces por ejemplo un millón de llamadas, el tiempo debería cambiar, ya que tu programa realiza el cálculo un millón de veces y el mío solo una
Tu argumento no es válido compañero. Creo que eso era lo que discutías con Siq anteriormente.
Es totalmente INCORRECTO llamar más de 1 vez a una misma función, con los mismos parámetros y que dé el mismo resultado.

Y vuelvo y digo, tu código no es extensible.



Edito:
Ya entendíqué me intentas dar a entender, pero estás basándote en un límite y ese arreglo lo deberás ampliar cada vez que se cambie el límite, ya que en realidad el límite es 170 y deberás hacer un bucle para generar todas las posiciones del arreglo.
« Última modificación: 26 de Agosto de 2011, 01:12:06 am por Physlet »

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #39 en: 26 de Agosto de 2011, 01:12:38 am »
Tu argumento no es válido compañero. Creo que eso era lo que discutías con Siq anteriormente.
Es totalmente INCORRECTO llamar más de 1 vez a una misma función, con los mismos parámetros y que dé el mismo resultado.

Y vuelvo y digo, tu código no es extensible.

si supieras leer el código lo entenderías

la diferencia que hay es que de la manera dinámica solo calculas UNA VEZ los factoriales, en cambio, Tú los calculas continuamente, si calculas por ejemplo el factorial de 15, y después el de 14, lo estás haciendo de una manera poco eficiente.

Cuando, de la manera dinámica calculas el de 15, entonces habrá guardado ya TODOS los factoriales en una tabla y no será necesario VOLVERLOS A CALCULAR como hace tu solución.

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #40 en: 26 de Agosto de 2011, 01:15:53 am »
pongo un límite porque es un PROBLEMA. Prueba a calcular 1000! a ver que pasa

Desconectado Physlet

  • PHPero Experto
  • *****
  • Mensajes: 822
  • Karma: 41
  • Sexo: Masculino
  • Todo es posible con esfuerzo, dedicación e interés
    • Ver Perfil
    • PanamaDev
Re:[RETO] calcular factorial
« Respuesta #41 en: 26 de Agosto de 2011, 01:21:07 am »
Ya entendí a lo que te refieres. Gracias.

Desconectado nmartin021

  • PHPero Avanzado
  • ****
  • Mensajes: 250
  • Karma: 9
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #42 en: 23 de Septiembre de 2011, 13:36:46 pm »
A menos que exista un modo matemático de solucionar este problema, no se me ocurre nada más rápido. Envíame la solución -si quieres- y la testearé en 1000 bucles :P

Desconectado good

  • PHPerit@
  • *
  • Mensajes: 49
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #43 en: 30 de Septiembre de 2011, 14:26:54 pm »
A menos que exista un modo matemático de solucionar este problema, no se me ocurre nada más rápido. Envíame la solución -si quieres- y la testearé en 1000 bucles :P

se puede irerar un máximo de 15 veces, 1000 bucles es mortal xDD

Desconectado nmartin021

  • PHPero Avanzado
  • ****
  • Mensajes: 250
  • Karma: 9
    • Ver Perfil
Re:[RETO] calcular factorial
« Respuesta #44 en: 07 de Octubre de 2011, 21:23:29 pm »
se puede irerar un máximo de 15 veces, 1000 bucles es mortal xDD
Me podrías enviar la solución, por favor? Me pica mucho la curiosidad... ya que dijiste que sólo sacas el factorial una vez, y es algo que se me hace extraño en un bucle.

Saludos