Si puedes hacer comparaciones, entonces puedes manejar esto con una precisión arbitraria.
Que los dos números sean $a$ y $b$ y usted está tratando de calcular $b \div a$ . Si $a = 0$ La división es ilegal, y estás acabado. Si $b = 0$ el cociente es $0$ y ya está.
Si no, cuenta cuántas veces puedes añadir $a$ a sí mismo antes de alcanzar o superar $b$ . Asegúrate de llevar la cuenta de las sumas en curso. Si llegas a $b$ exactamente, se trata del cociente de enteros $q$ exactamente, y ya está.
En caso contrario, uno menos que el recuento es $q$ la parte entera del cociente, y la penúltima suma fue $qa$ . Ahora multiplique tanto esto como $b$ por $10$ , por lo que ahora está comparando $10qa$ y $10b$ . De nuevo, añada $a$ a la primera hasta alcanzar o superar $10b$ . Si llega a $10b$ exactamente, entonces el recuento es $r_1$ , el primer y el último dígito decimal del cociente, y ya está.
Por lo demás, $r_1$ es uno menos que la cuenta. Si has llevado la cuenta de las sumas en curso, la suma anterior será $(10q+r_1)a$ . Multiplique esto y $10b$ por $10$ Así que ahora estás comparando $(100q+10r_1)a$ y $100b$ . De nuevo, añada $a$ a la primera hasta alcanzar o superar $100b$ que le permitirá determinar $r_2$ el segundo dígito de la parte decimal del cociente. Confío en que puedas seguir con esto.
Ejemplo. Dejemos que $a = 4$ y $b = 19$ . Podemos añadir $a = 4$ a sí mismo $5$ veces para superar $b = 19$ , por lo que uno menos que eso es $q = 4$ la parte entera del cociente.
La suma anterior era $qa = 16$ . Multiplique esto y $b$ por $10$ para conseguir $10qa = 160$ y $10b = 190$ . Podemos añadir $a = 4$ a $10qa = 160$ un total de $8$ veces antes de superar $10b = 190$ , por lo que uno menos que eso es $r_1 = 7$ el primer dígito de la parte decimal del cociente.
La suma anterior era $10qa+r_1a = 188$ Así que multiplicamos esto y $190$ por $10$ para conseguir $1880$ y $1900$ . Podemos añadir $a = 4$ un total de $5$ veces a la $1880$ para alcanzar $1900$ exactamente, así que $r_2 = 5$ es el segundo y último dígito de la parte decimal del cociente.
4 votos
¿Qué diablos significa esto? ¿Qué tal multiplicar por el recíproco? Definitivamente, las reglas de este "juego" no están bien definidas.
0 votos
@Frpzzd Perdón, si mi pregunta no está tan bien definida. Básicamente, lo único que puedo hacer es sumar y/o multiplicar dos números. No puedo multiplicar por el recíproco ya que para eso, necesitaría realizar la división primero también.
0 votos
¿Cuáles son sus dos números?
0 votos
¿Sólo trabajamos con números enteros?
0 votos
@Frpzzd Básicamente, dos números cualquiera.
0 votos
@krirkrirk No, lamentablemente no. Por la naturaleza del sistema con el que estoy trabajando, tenemos que tratar con números de punto flotante.
2 votos
Para calcular $x = 1/p$ se puede comenzar con una conjetura inicial $x = x_0$ y luego calcular las aproximaciones sucesivas $x_n$ utilizando la recursión: $$x_{n+1} = 2 x_n - p x_n^2$$
0 votos
@CountIblis ¡Muchas gracias!
0 votos
@CountIblis: Pero eso utiliza la sustracción, que es lo que barrunta la pregunta, ¿no?
0 votos
@StuntHacks: Tendrás que ser aún más claro en tu pregunta, sobre qué operaciones están permitidas. La respuesta de Lucozade, por ejemplo, utiliza complementos de dígitos, lo que podría ser permisible para ti, o no.
0 votos
" Pero eso utiliza la sustracción " La sustracción no es más que la suma por el inverso aditivo. Si se permite la multiplicación y si $(-1)$ es un número válido, entonces $a - b = a + (-1)\times b$ puede expresarse utilizando sólo la suma y la multiplicación.
0 votos
@JMoravitz: Pero dice que no puede usar la resta, debe haber algo que la distinga en su problema.
0 votos
Sí, lamentablemente el sistema con el que trabajo no admite números negativos (en este caso). Debería haberlo especificado, probablemente.