Fracción generatriz de números decimales periódicos puros o mixtos

Para introducir los números reales, es usual el que se enseñe la forma de calcular fracciones generatrices de números decimales exactos, periódicos puros y periódicos mixtos. Para la creación de este tipo de ejercicios (pero restringido a periódicos puros y mixtos ya que los exactos se obtienen de forma inmediata) muestro la forma de hacerlo con LyX/pythontex y la librería sympy. En la solución del ejercicio, además de obtener la fracción generatriz, se descomponen en factores primos el numerador y denominador de la fracción obtenida y se simplifica para obtener la fracción irreducible equivalente.

En el código del fichero LyX hay una función que creo merece la pena comentar, se trata de:

#Para factorizar un número
def factoriza(n):
    factores = factorint(n)
    resultado = '\\begin{tabular}{r|l}'
    for primo in factores:
        for i in range(factores[primo]):
            resultado = resultado+str(n)+'&'+str(primo)+'\\\\'
            n = n//primo
    return print(resultado + '1&\\\\\\end{tabular}')

se puede reutilizar en otros ficheros para poder obtener la descomposición en factores de un número entero, por ejemplo con una llamada del tipo

\sympyc{factoriza(4004)}

se obtendría:

image

Comento ya el fichero LyX que resuelve los problemas del enunciado. Los únicos parámetros que tendremos que modificar en el fichero son:

#Definimos nuestro número decimal periódico puro o mixto
#Tienen que ir como cadena para poder hacerlo
#Nuestro número será de la forma ce+cap+cp donde
# ce -> es la parte entera
# cap -> anteperiodo si el decimal es periódico mixto
#        si el decimal es periódico puro dejarlo vacio
# cp -> es el la parte del periodo

#Escribimos nuestro número
ce='0'
#cap='025'
cap=''
cp='142857'

En el fichero disponible para su descarga se han creado dos ejercicios, el primero con los valores anteriores y el segundo con:

#Escribimos nuestro número
ce='0'
#cap='025'
cap='58'
cp='3'

A partir de ellos se obtienen los enunciados (en diferente orden del que se muestra aquí en la Web):

Ejercicios

  1. Halla la fracción generatriz irreducible de \(0.142857142857142857\ldots\)
  2. Halla la fracción generatriz irreducible de \(0.58333\ldots\)

Para esos valores la solución obtenida es

Solución

  1.  \(x=0.142857142857142857\ldots\)

      \(1000000\cdot x=\) \(142857.142857142857\ldots\)
    - \(1\cdot x=\) \(0.142857142857\ldots\)
      \(999999\cdot x=\) \(142857\)\(\phantom{xxxxxxxxxxxxxxxx}\)

    \(\Rightarrow\,x=\dfrac{142857}{999999}\)

    Si factorizamos el numerador y denominador tenemos que

    image1

    \(x=\dfrac{142857}{999999}=\dfrac{11^{1}\cdot13^{1}\cdot3^{3}\cdot37^{1}}{11^{1}\cdot13^{1}\cdot3^{3}\cdot37^{1}\cdot7^{1}}=\frac{1}{7}\)

  2.  \(x=0.58333\ldots\)

    \(1000\cdot x=\) \(583.3\ldots\)
    - \(100\cdot x=\) \(58.3\ldots\)
    \(900\cdot x=\) \(525\)\(\phantom{xxxx}\)

    \(\Rightarrow\,x=\dfrac{525}{900}\)

    Si factorizamos el numerador y denominador tenemos que image2

    \(x=\dfrac{525}{900}=\dfrac{3^{1}\cdot5^{2}\cdot7^{1}}{2^{2}\cdot3^{2}\cdot5^{2}}=\frac{7}{12}\)