Práctica: Multiplicar mediante duplicación y mediación
Como práctica de lo que has aprendido puedes construir un algoritmo clásico para la multiplicación, que se remonta al antiguo Egipto y que también es conocido como multiplicación rusa. Consiste en duplicar sucesivamente uno de los factores, mientras el otro (de forma paralela) se va reduciendo a mitades enteras. Después el producto se consigue tachando las parejas cuya parte “mitad” es impar y sumando los “dobles” restantes.
En la siguiente tabla puedes ver el proceso de multiplicar 345 por 67:
Algoritmo |
|
|
|
Uno de los números se va duplicando y el otro dividiendo entre 2 de forma entera. Cuando este llega a 1 o 0, se para el proceso. |
345 |
67 |
67 |
172 |
134 |
|
|
86 |
268 |
|
|
43 |
536 |
536 |
|
21 |
1072 |
1072 |
|
10 |
2144 |
|
|
5 |
4288 |
4288 |
|
2 |
8576 |
|
|
1 |
17132 |
17132 |
|
|
Resultado |
|
23115 |
No discutiremos en este momento por qué funciona el algoritmo. En libros de Matemáticas Recreativas o de Historia de las Matemáticas podrás consultar otros detalles. Sólo nos detendremos en la construcción del algoritmo en una Hoja de Cálculo.
Construcción del algoritmo
Abre un archivo nuevo de Hoja de Cálculo para implementar el algoritmo. Puedes comenzar por una cabecera de datos parecida a la siguiente:
Los números no han de ser necesariamente 345 y 67, como ya habrás comprendido, pero te será útil mantenerlos para comprobar tus operaciones.
Aprovecha para practicar la unión de celdas en el encabezamiento del modelo. El 67 de la derecha de la imagen déjalo para una segunda fase de la construcción.
Después deberemos duplicar el 67 (por ejemplo) y dividir por la mitad el 345. Para ello crearemos tres columnas como las siguientes, que iremos explicando una a una:
Duplicaciones del segundo factor
Esta columna no presenta inconvenientes: En cada celda deberás escribir la fórmula =celda de arriba*2 Por ejemplo, si el número está contenido en la celda F9, las fórmulas deberán ser F9*2, F10*2, F11*2...Arrastra ese tipo de fórmula hasta una columna de unos 20 ó 25 datos. Cuantos más haya, mayores podrán ser los factores.
Mitades del otro factor
A primera vista parecería que podríamos usar la misma técnica: C9/2, C10/2, C11/2, etc., pero como deseamos que la mitad sea entera, deberemos usar las funciones COCIENTE o ENTERO, que estudiamos en la teoría. Ambas valen.
Puedes usar
=COCIENTE(Celda de arriba;2)
o bien
=ENTERO(Celda de arriba/2)
Prueba cualquiera de las dos y arrastra hasta formar la columna. Comprueba los resultados con los de la imagen de arriba.
Sumandos
Ahora sólo nos queda decidir qué duplicaciones convertimos en sumandos, que como ya hemos explicado en el esquema, serán las correspondientes a las mitades impares.
Selecciona la celda de cabecera de esta tercera columna, que se corresponderá con el 67 de la primera imagen que dejamos sin rellenar. Recuerda que esta tercera columna comienza a la misma altura que los factores, porque si el primero es impar, habrá que contar con él.
Una vez seleccionada la celda de la derecha de los factores, la convertiremos en sumando si la mitad es par y en caso contrario la rellenaremos con un espacio en blanco. La fórmula puede ser:
=SI(ESIMPAR(Su paralelo en la columna de mitades);Su paralelo en los dobles;" ")
Es decir, si su paralelo en las mitades es impar, se toma su paralelo en los dobles y en caso contrario se escribe un espacio en blanco.
Pruébalo bien hasta que funcione. Si tienes dificultades consulta el modelo multi.ods.
Termina sumando la tercera columna mediante autosuma o con la función SUMA. En ambos casos los espacios en blanco se ignorarán y quedará como resultado el producto “ruso” o por duplicación..
Puedes terminar comparando este producto con el normal, conseguido mediante la fórmula
=Primer factor * Segundo factor
División por duplicación
El mismo procedimiento se puede usar para dividir, pero tomando nota de las potencias que equivalen a las duplicaciones. En la tabla tienes un esquema para dividir 320 entre 29:
Duplicaciones |
Potencias |
Resto 320 – 232 = 88 y tomo nota de la potencia 8. Resto 88 – 58 = 30 y tomo nota del 2. |
29 |
1 |
|
58 |
2 |
|
116 |
4 |
|
232 |
8 |
|
|
|
|
El algoritmo es sencillo, pero en la Hoja de Cálculo se complica. Si te interesa el tema y deseas aprender más técnicas algorítmicas, estudia el modelo divi.ods.