Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: engel lex en 27 Septiembre 2012, 17:01 pm



Título: algún algoritmo para decimales periodicos
Publicado por: engel lex en 27 Septiembre 2012, 17:01 pm
Por ahora el lenguaje a usar tentativamente es java... por eso pregunto en programación general a ver si me pueden ayudar... podría usar php también por cosas de ver si me funciona y programarlo rápido (también por lo lento me ayudaría a calcular tiempo)

necesito que al realizar una división poder:

notar el decimal es periódico
   en caso afirmativo detectar el periodo y anteperiodo

hago un ejemplo

124325503/9999900
eso genera algo como esto  12.43267462 siendo el pedazo subrayado el periodo


pienso...

mi primer problema es descartar si el numero es solo un decimal exacto muy largo o un irracional...

mi segundo, si es un periódico, conseguir el periodo

lo que no sabría, es buscar el patrón sino casi a fuerza bruta

¿quien me hecha una manito aquí a ver si puedo avanzar?



Título: Re: algún algoritmo para decimales periodicos
Publicado por: jvchino en 29 Septiembre 2012, 07:47 am
Primero lo primero: Verificar si la división genera un decimal exacto o periódico.
- Simplificar la fracción hasta convertirla en irreducible.
- Si el divisor resulta múltiplo solo de de 2 y/o de 5 es un decimal exacto.
- De lo contrario será un decimal periódico.

Superado el primer paso, puedes continuar con lo que sigue: Determinar el periodo.

Saludos.


Título: Re: algún algoritmo para decimales periodicos
Publicado por: engel lex en 30 Septiembre 2012, 05:12 am
no, disculpa que creo que no quedó claro un hecho... el asunto es que el proceso es de "buscar patrones" ya que no conozco la división...

tengo es el resultado... y básicamente es convertirlo a su forma racional...


Título: Re: algún algoritmo para decimales periodicos
Publicado por: MCKSys Argentina en 30 Septiembre 2012, 12:24 pm
Suponiendo que expreses los decimales como un string, se me ocurre que podrias implementar un compresor LZW y una vez terminada la compresion, analizar la tabla de códigos y el output generado.

De esta forma, si existe repeticion en el stream de decimales, va a estar reflejado en la tabla (se va a comprimir).

Incluso podrias determinar el periodo excato sin mucho esfuerzo...

Saludos!


Título: Re: algún algoritmo para decimales periodicos
Publicado por: engel lex en 16 Octubre 2012, 19:42 pm
me parece excelente... me pondré a pie con un compresor y a ver como es la salida