Título: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 11:44 am Hola a todos, los invito a que programen a gusto si un número es perfecto o no.
Cómo funciona un número perfecto? Un número es perfecto, cuando la SUMA de TODOS sus divisores, evadiendo a si mismo, es igual a ese número. Ej: 6: 1+2+3 = 6 28: 1+2+4+7+14 = 28 etc Lista: 6 28 496 8128 33550336 8589869056 137438691328 2305843008139952128 Valoro pensamientos/deducciones propias :D Título: Re: [RETO] Determinar Número Perfecto Publicado por: ivancea96 en 23 Octubre 2013, 12:09 pm No lo pillo.
los invito a que programen a gusto si un número es perfecto o no. ¿Si un número es perfecto o no? Los números perfectos, como bien explicaste, son los que cumplen esa condición. ¿Se trata de descubrir cuales de esos números no es erfecto o algo así? xD Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 23 Octubre 2013, 13:18 pm HOLA!!!
Hay que crear un verificador de numeros perfectos o un generador? GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 14:12 pm A lo que me refiero es que el usuario ingrese un número en un textbox y al hacer click en un button le informe si el número ingresado es perfecto o no. :P
Título: Re: [RETO] Determinar Número Perfecto Publicado por: Mad Antrax en 23 Octubre 2013, 14:50 pm Es más divertido hacer un generador. Mola mucho programar funciones recursivas
Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 23 Octubre 2013, 15:05 pm HOLA!!!
Que comience el reto! Ejemplo de la funcion: Código
Si quieren hacer una funcion que devuelva el x numero perfecto aqui la funcion: Código y que devuelva el N numero perfecto de la lista! GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: Slava_TZD en 23 Octubre 2013, 15:15 pm Ya contareis cuanto os tarda en comprobar el último número, lo acabo de hacer en Perl y lo cerré porque mi macTrasto se puso hirviendo.
Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 23 Octubre 2013, 15:56 pm HOLA!!!
Mi funcion puede verificar los numeros perfectos sin problema, probe con el ultimo que esta aca y lo verifica en menos de 0,1 ms .- Para que vean que lo que importa es el algoritmo no el lenguaje ;) Código
Superenme ;) GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 16:28 pm Mi código, con un par de deducciones que hice ;)
Código
Modificación. Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 23 Octubre 2013, 16:34 pm HOLA!!!
Me parece o alguien tomo de base mi ejemplo funcion... :silbar: :silbar: :silbar: :silbar: :silbar: P.D: tu funcion da OVERFLOW en esta linea cuando se inserta el numero 2305843008139952128 : Código
GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 16:36 pm HOLA!!! Me parece o alguien tomo de base mi ejemplo funcion... :silbar: :silbar: :silbar: :silbar: :silbar: GRACIAS POR LEER!!! jajaja sí, yo a las funciones las llamo asd o sdav jajaja Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 23 Octubre 2013, 16:47 pm HOLA!!!
Hice una pequeña prueba con el maximo numero que soporta tu funcion y solo una llamada: (http://i.imgur.com/PP1ZaCr.png) For the record: Mi funcion recien empieza a tener un tiempo registrable luego de las 1000 llamadas (4ms) con 10000 llamadas llega a 47ms! Y por supuesto... Con el numero: 2305843008139952128 @Miseryk : En vez de buscar el ultimo digito de esa manera buscalo asi, ya que tu funcion no acepta numeros mayor que long te va a servir: Código
GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 16:57 pm Código Completo:
Código
Modificación_2 Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 16:58 pm HOLA!!! Hice una pequeña prueba con el maximo numero que soporta tu funcion y solo una llamada: (http://i.imgur.com/PP1ZaCr.png) For the record: Mi funcion recien empieza a tener un tiempo registrable luego de las 1000 llamadas (4ms) con 10000 llamadas llega a 47ms! Y por supuesto... Con el numero: 2305843008139952128 @Miseryk : En vez de buscar el ultimo digito de esa manera buscalo asi, ya que tu funcion no acepta numeros mayor que long te va a servir: Código
GRACIAS POR LEER!!! Wow, interesante, no se me había ocurrido. Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 17:29 pm Estuve probando ésto en .NET que soporta números muy grandes, y la función que hiciste en números muy grandes retorna True en todos los números, estoy pasándolo a VB.NET para que lo veas mejor.
Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 23 Octubre 2013, 17:38 pm HOLA!!!
Esto es VB6!!!!!!!! (con el tono de "ESTO ES ESPARTAAAAAA") Que el No-Compilador de Net sea idiota no es mi problema.- GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 18:14 pm Nono, es cierto, me faltó una conversión de tu función a UInt64, el código funciona bien y muy rápido :D :D
Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 23 Octubre 2013, 19:19 pm Voy a esperar a ver quién más postea algún código mientras mejoro el mio.
Estoy en .NET (solamente por el número que uso para testear la función) utilizando como prueba el número perfecto 2305843008139952128 Con respecto a los resultados en y con: SO: Windows 7 Ultimate 64 bits Procesador: Intel(R) Core(TM) i5-3570K CPU @ 3.40Ghz 3.40GHz Memoria instalada (RAM): 16,0 GB 79137913: Número: 2305843008139952128 Resultado: True Tiempo Milisegs: 0,0084 (EL MÍNIMO TIEMPO POSIBLE DE DEMASIADOS INTENTOS) PD: el mio no lo muestro porque necesito una computadora quántica para que me diga el tiempo que tarda, pero estoy en éso. Título: Re: [RETO] Determinar Número Perfecto Publicado por: Miseryk en 25 Octubre 2013, 18:23 pm HOLA!!! Mi funcion puede verificar los numeros perfectos sin problema, probe con el ultimo que esta aca y lo verifica en menos de 0,1 ms .- Para que vean que lo que importa es el algoritmo no el lenguaje ;) Código
Superenme ;) GRACIAS POR LEER!!! Mientras estuve tratando de crear un algoritmo, me dí cuenta que esa función retorna mal algunos valores como por ejemplo: al verificar con el número 2 retorna Verdadero el cual no es perfecto. al verificar con el número 12 retorna Verdadero el cual no es perfecto. al verificar con el número 14 retorna Verdadero el cual no es perfecto. al verificar con el número 24 retorna Verdadero el cual no es perfecto. etc Título: Re: [RETO] Determinar Número Perfecto Publicado por: 79137913 en 26 Octubre 2013, 04:57 am HOLA!!!
:O Lo soluciono el lunes! GRACIAS POR LEER!!! Título: Re: [RETO] Determinar Número Perfecto Publicado por: rob1104 en 8 Noviembre 2013, 02:24 am Aui va mi función, es muy rapida :rolleyes:
Código
Jaja fuera bromas, esto es lo que pude hacer, aunque con numeros muy grandes tarda una eternidad :-\ Código
Saludos |