Let x be a number with a repeating decimal. Express x as:
x = z.(a1)(a2)...(an)(b1)(b2)...(bm)(b1)(b2)...(bm)...
where each (ai) is a non repeating decimal place, and each (bi) is in the repeating part of the decimal, and z>0 is an integer. To clarify, z could have many digits.
Now, multiply the equation by 10^n:
10^n * x = z(a1)(a2)...(an).(b1)(b2)...(bm)..., so the entire decimal portion repeats.
Now multiply by 10^m:
10^(n+m) * x = z(a1)(a2)...(an)(b1)(b2)...(bm).(b1)(b2) ... (bm)...
Subtract 10^n * x = z(a1)(a2)...(an).(b1)(b2)...(bm) from our last equation:
10^n * (10^m - 1) * x = z(a1)(a2)...(an)(b1)(b2)...(bm) - z(a1)(a2)...(an)
Notice that the right side no longer has any decimals. Now divide by 10^n * (10^m - 1):
x = ( z(a1)(a2)...(an)(b1)(b2)...(bm) - z(a1)(a2)...(an) ) / (10^n * (10^m - 1).
Therefore, x is a fraction with integer numerator and denominator, thus rational.