La forma rápida y sensata de encontrar aproximaciones a $\sqrt2$ es utilizar el antiguo método babilónico ilustrado en la respuesta de Travis. Otra forma de hacerlo es utilizar fracciones continuas . La representación de la fracción continua de $\sqrt2$ es muy simple. De hecho, todos los números irracionales cuadráticos tienen representaciones de fracciones continuas que acaban repitiéndose.
Las evaluaciones parciales de una fracción continua se llaman sus convergentes. Sea $x$ sea un número irracional y que $p/q$ sea uno de sus convergentes. Entonces $p/q$ es la mejor aproximación racional a $x$ para un denominador en la vecindad de $q$ siendo el error $k/q^2$ , donde $k$ es un número entero pequeño ( $k$ a menudo puede ser 1). En cambio, si $p/q$ es no a convergente, esperamos que el error sea del orden de $k/q$ .
Para encontrar la representación de la fracción continua de $\sqrt2$ podemos proceder de la siguiente manera.
Dejemos que $x = \sqrt2$
Entonces \begin {align} x^2-1 & = 1 \\ (x+1)(x-1) & = 1 \\ x-1 & = \frac {1}{1+x} \\ x & = 1 + \frac {1}{1+x} \\ \end {align}
Ahora podemos sustituir esa fracción por $x$ en sí mismo:
$$x = 1 + \frac{1}{1+1 + \frac{1}{1+x}}$$ $$x = 1 + \frac{1}{2 + \frac{1}{1+x}}$$
Y, por supuesto, podemos repetir el proceso:
$$x = 1 + \frac{1}{2 + \frac{1}{2+\frac{1}{2 + \frac{1}{1+x}}}}$$
Si continuamos este proceso indefinidamente los 2s se seguirán repitiendo. La forma compacta de escribir esto es $[1;2,2,2,…]$ .
Para obtener los convergentes evaluamos la fracción continua desde el principio, ignorando los términos posteriores. Esto nos da
$$\frac{1}{1}, \frac{3}{2}, \frac{7}{5}, \frac{17}{12}, \frac{41}{29}, \frac{99}{70}, \frac{239}{169}, \frac{577}{408}, \frac{1393}{985}, \frac{3363}{2378}, \dots$$
Deberías ser capaz de ver un patrón simple en los numeradores y denominadores. Hagamos explícito ese patrón. Sabemos que si $x = \sqrt 2$ entonces
\begin {align} x = 1 + \frac {1}{1+x} \\ x = \frac {x+2}{x+1} \end {align}
Ahora dejemos que $x = p/q$ sea una aproximación racional a $\sqrt 2$ y que $p'/q'$ sea la siguiente aproximación. \begin {align} \frac {p'}{q'} = \frac { \frac {p}{q}+2}{ \frac {p}{q}+1} \\ \frac {p'}{q'} = \frac {p+2q}{p+q} \end {align} Así $p' = p+2q$ y $q' = p+q$
Podemos hacer esto un poco más riguroso. $\left(\frac{p}{q}\right)^2 \approx 2$ y de hecho para los convergentes mostrados anteriormente, $p^2 - 2q^2 = \pm 1$ Por lo tanto $$\left(\frac{p}{q}\right)^2 = 2 \pm \frac{1}{q^2}$$
Dejemos que $p' = p+2q$ y $q' = p+q$
Entonces \begin {align} p'^2 - 2q'^2 & = (p+2q)^2 - 2(p+q)^2 \\ & = p^2 + 4pq + 4q^2 - 2p^2 - 4pq - 2q^2 \\ & = -p^2 + 2q^2 = -(p^2 - 2q^2) \\ p'^2 - 2q'^2 & = \mp 1 \end {align}
Así que si $\frac{p}{q}$ es una buena aproximación a $\sqrt 2$ entonces $\frac{p'}{q'}$ también es una buena aproximación a $\sqrt 2$ y es mejor que $\frac{p}{q}$ porque $q' > q$ . (Esto es esencialmente una prueba por inducción).
Podemos factorizar $p^2 - 2q^2 = (p + \sqrt 2 q)(p - \sqrt 2 q) = \pm 1$
Sustituyendo $p=1, q=1$ de nuestro primer convergente, obtenemos $$(1 + \sqrt 2)(1 - \sqrt 2) = -1$$
Elevando ambas partes al poder de $n$ : $$(1 + \sqrt 2)^n(1 - \sqrt 2)^n = (-1)^n$$
Ahora $$(p + \sqrt 2 q)(1 + \sqrt 2) = (p + 2q) + \sqrt 2(p + q) = p' + \sqrt 2 q'$$
Así que podemos escribir $p_n + \sqrt 2 q_n = (1 + \sqrt 2)^n$ donde cada número entero $n \ge 1$ nos da una convergencia $\frac{p_n}{q_n}$ . Si dejamos que $n$ tomar en sucesivas potencias de 2 entonces obtenemos las aproximaciones encontradas por el método babilónico.
$$p_{2i} + \sqrt 2 q_{2i} = (p_i + \sqrt 2 q_i)^2\\ = (p_i^2 + 2q_i^2) + \sqrt 2 2 p_i q_i$$
También mencionaré sin pruebas que $p_{i+2} = 2p_{i+1} + p_i$ y $q_{i+2} = 2q_{i+1} + q_i$ . Tenga en cuenta que $p_i$ es siempre impar, y cuando $i$ es impar, también lo es $q_i$ . Dejemos que $p = 2a + 1$ . Cuando $q$ es impar, $a^2+(a+1)^2=q^2$ Cuando $q$ está en paz, $a^2+(a+1)^2=q^2+1$ .
Por cierto, aquí hay un corto script de Python que calcula y prueba estos convergentes. (Este código funciona tanto en Python 2 como en Python 3).
from __future__ import print_function, division
p, q = 1, 1
print(' i: p q -> x x*x')
fmt = '{0:2}: {1:5} {2:5} -> {3} {4}'
for i in range(1, 14):
x = p / q
print(fmt.format(i, p, q, x, x * x))
p, q = p + 2 * q, p + q
salida
i: p q -> x x*x
1: 1 1 -> 1.0 1.0
2: 3 2 -> 1.5 2.25
3: 7 5 -> 1.4 1.96
4: 17 12 -> 1.41666666667 2.00694444444
5: 41 29 -> 1.41379310345 1.99881093936
6: 99 70 -> 1.41428571429 2.00020408163
7: 239 169 -> 1.41420118343 1.99996498722
8: 577 408 -> 1.41421568627 2.0000060073
9: 1393 985 -> 1.41421319797 1.99999896931
10: 3363 2378 -> 1.41421362489 2.00000017684
11: 8119 5741 -> 1.41421355165 1.99999996966
12: 19601 13860 -> 1.41421356421 2.00000000521
13: 47321 33461 -> 1.41421356206 1.99999999911
Por último, aquí hay un código que utiliza la aritmética de enteros (grandes) y el método babilónico para producir los dígitos decimales de $\sqrt 2$ .
x = t = 1
for n in range(15):
s = 10 * t
x = 5 * x + (t * s) // x
t = s
print(x, x*x, (x+1)**2)
salida
15 225 256
141 19881 20164
1414 1999396 2002225
14142 199996164 200024449
141421 19999899241 20000182084
1414213 1999998409369 2000001237796
14142135 199999982358225 200000010642496
141421356 19999999932878736 20000000215721449
1414213562 1999999998944727844 2000000001773154969
14142135623 199999999979325598129 200000000007609869376
141421356237 19999999999912458800169 20000000000195301512644
1414213562373 1999999999999731161391129 2000000000002559588515876
14142135623730 199999999999973116139112900 200000000000001400410360361
141421356237309 19999999999999857198323561481 20000000000000140041036036100
1414213562373095 1999999999999999861967979879025 2000000000000002690395104625216
2 votos
Usted está preguntando que encontraría la aproximación decimal de un número dado, digamos $\sqrt{2}$ ?
0 votos
@Guy Sí, pero entonces ¿cómo es que tenemos dos secuencias diferentes de aproximaciones?
7 votos
Existen diferentes algoritmos para calcular los decimales de $\sqrt{2}$ . Cada algoritmo dará una secuencia de números que se aproxima a él. Aunque algunas de estas secuencias son diferentes, todas tienen el mismo límite.
3 votos
La notación recursiva de su secuencia es $a_1=2$ y $a_{n+1}=\frac{1}{2} \Bigl(a_n+\frac{2}{a_n} \Bigr)$
8 votos
A modo de reflexión, las secuencias $(1/n)_{n\in\Bbb{N}}$ , $(1/2n)_{n\in\Bbb{N}}$ y $\{0,0,0,...\}$ todos convergen a cero, pero son diferentes.
0 votos
@Chinz Gracias. ¿Qué pasa con la secuencia que comienza con 1?
0 votos
La aproximación $1.5$ tiene una integral de tipo Dalzell $$\frac{5}{8}\int_0^1 \frac{x(1-x)}{\sqrt{1+x}} dx = \frac{3}{2}-\sqrt{2}$$
0 votos
@JoeJohnson126 Gracias. ¿Puedes dar alguna referencia de los algoritmos para que pueda buscarlos?
0 votos
@Binu Eso no importa... toma cualquier número positivo.
0 votos
@Binu como un buen punto de partida, el método Newton-Rhapson es un buen método de aproximación que converge rápidamente.
0 votos
La iteración de Newton-Raphson o de punto fijo podría utilizarse para encontrar los valores aproximados de valores como $\sqrt{2}$
2 votos
@Chinz Ninguna de las dos secuencias dadas por OP es esa.
1 votos
Relacionado, posible duplicado: math.stackexchange.com/questions/1295373/