UNIDAD II: SISTEMA NUMÉRICOS TOTAL: Seis Sesiones SESIÓN 4.1.- Algoritmos y Heurísticas 2.- Recursividad y anagramas 3.- Ordenes de Magnitud 4.- Geometría recreativa 5.- Álgebra recreativa 6.- Problemas de planteamiento DEFINICIÓN DE ALGORITMO Algoritmo: Es una serie ordenada, clara y precisa de los pasos que hay que seguir para realizar una tarea o para encontrar la solución del problema planteado. Un algoritmo debe de reunir las siguientes propiedades: 1. Constar de una secuencia bien definida de pasos. 2. Cada paso debe ser simple y preciso; es decir, constar de una operación elemental claramente definida, por ejemplo: leer un dato, sumar dos números, mandar a cargar un impuesto, etc. 3. Constar de un número finito de pasos para llegar a la solución del problema. 4. Las decisiones deben ser claras. 5. Dar las posibilidades de una solución lo mas general posible; es decir, que permita resolver la mayor variedad de situaciones de una cierta clase, no únicamente un problema en particular. ALGORITMO DE EUCLIDES Uno de los algoritmos más antiguos que se conocen, y que todavía se utiliza hoy en día, se debe a Euclides y permite calcular el máximo común divisor de dos números de una manera cómoda y rápida. Es decir, la finalidad de este algoritmo radica en encontrar el mayor número entero que es divisor de los dos números dados. Adaptado al lenguaje actual, el algoritmo de Euclides viene a decir que puede obtenerse el máximo común divisor (mcd) de dos números, a y b, en la siguiente forma: Máximo común divisor 1. Se ordenan. a es mayor que b 2. Calcular r, el resto de la división entre a y b 3. Si r = 0 el mcd (a, b) es b. En caso contrario, se asigna el valor de b a a a ← b y el valor de r se asigna a b b ← r y se vuelve al paso 2. 1 Usando el Algoritmo de Euclides: a) Hallar el mcd( 1230, 450) b) Hallar el mcd( 4096, 256) c) Hallar el mcd( 5020, 440) Seguidamente le detallo otro algoritmo, más sencillo que los anteriores, dado a conocer por Thomas H. O.Beirne en su libro .Puzzles and Paradoxes. (1965). Eso sí, sólo es eficaz para años comprendidos entre 1900 y 2099. pero considero que ya es suficiente, ¿no cree? ALGORITMO DEL DOMINGO DE PASCUA La Pascua de Resurrección es, junto con la Navidad, la fiesta más importante del calendario cristiano. Ahora bien, inicialmente la Pascua era la celebración que el pueblo judío hacía de su marcha de Egipto y, al regirse por un calendario lunar, la hicieron coincidir con la primera luna llena de primavera. En el Concilio de Nicea (año 325) la Iglesia estableció que la Pascua cristiana tendría lugar el domingo posterior a la primera luna llena después del equinoccio de primavera, que se fijó en el 21 de marzo, cuando antes era el 25 de marzo7. ¿Queda claro por qué las vacaciones de Semana Santa bailan tanto de un año para otro? Semana Santa (domingo de Resurrección) 1. 2. 3. 4. 5. 6. 7. 8. Calcular a = año - 1900 Sea b el resto de dividir a entre 19 Hallar c, el cociente de la división entre (7b + 1) y 19 Sea d el resto de dividir (11b + 4 - c) entre 29 Hallar e, el cociente de la división entre a y 4 Sea f el resto de dividir (a + e + 31 - d) entre 7 Calcular g = 25 – d - f Si g es positivo, la fecha es g de Abril; en caso contrario, es 31 + g de Marzo. Completar los diferentes valores que se van obteniendo al aplicar el algoritmo anterior, cuando se calcula el día domingo de Resurrección de los años 2009-2012. Año a b c d e f g 2009 2010 2 2011 2012 DÍGITO VERIFICADOR El RUT (Rol Único Tributario) es un número que identifica a cada persona en Chile y se usa desde 1969. El RUT consiste en un número y un dígito verificador, que va desde el 0 al 9 y la letra K. El número de cada RUT es único e irrepetible, y el dígito verificador se calcula a partir del número. El dígito verificador existe para “evitar engaños y suplantaciones de identidad” y es calculado con un algoritmo, que son sólo simples cálculos aritméticos. Para saber su dígito verificador, haga lo siguiente: 1. Tome los números de su RUT (sin contar el dígito verificador, obvio). 2. Invierta el orden de los números. 3. Tome los números y vaya multiplicando cada uno de ellos por la siguiente serie de números: 2, 3, 4, 5, 6, 7… en ese orden. Si se le acaban los números de la serie, vuelva a usarla desde el principio. 4. Una vez que haya multiplicado cada uno de los números, sume los resultados obtenidos. 5. Divida el número obtenido por 11 y obtenga el resto. 6. Al número 11, réstele el resto de la división anterior. 7. Ahora hay que analizar el número obtenido. Hay tres posibilidades: • • • Si el número obtenido es 1, 2, 3, 4, 5, 6, 7, 8 ó 9; ése es el dígito verificador. Si el número obtenido es 11, el dígito verificador es 0. Si el número obtenido es 10, el dígito verificador es K. Hallar el dígito verificador, usando el RUT de cada uno de los integrantes del equipo de trabajo. CUADRADOS MÁGICOS Un cuadrado mágico se obtiene colocando una serie de números naturales en una matriz cuadrada de tal forma que todas las filas, todas las columnas y las diagonales sumen el mismo número: la constante mágica. Generalmente suelen colocarse los números entre 1 y n2, siendo n el número de filas y columnas del cuadrado. A este número n se le denomina orden del cuadrado mágico. Formando un cuadrado mágico de orden n de esta forma la suma de cada fila, cada columna y cada diagonal es: S ( n) = ( ) n n2 +1 2 Cuadrados mágicos de orden impar: Método de Loubere 1. Coloque el 1 en la posición central de la fila superior. 2. Suba un lugar hacia arriba y luego avance un lugar hacia la derecha. 3 3. Si la posición está en el cuadrado y la celda está vacía, ponga ahí el número que sigue. Ir al paso 7. 4. Si esta posición cae fuera por arriba se coloca el número que sigue en la última celda de la columna en que se encuentra. Ir al paso 7. 5. Si esta posición cae fuera por la derecha del cuadrado, se coloca el número que sigue en la primera celda de la fila en que se encuentra. Ir al paso 7. 6. Si esta posición cae fuera por la diagonal del cuadrado, se coloca el número que sigue en la primera celda al inicio de la diagonal. Ir al paso 7. 7. Si esta celda está ocupada, el número siguiente se coloca en la posición inmediatamente abajo del último número posicionado. 8. Volver al paso 2. Obtener los cuadrados mágicos de 3, 5 y 7 con este algoritmo. Rotaciones y reflexiones Una vez compuesto un cuadrado mágico, es fácil obtener sus variantes, es decir, hallar una serie de nuevos cuadrados mágicos. Rotación Traslación Reflexión Vertical 4 Reflexión Horizontal Para el cuadrado mágico de orden 3, obtener nuevas soluciones usando los conceptos antes visto. Heurística – Del griego ‘heuriskein’ : descubir, encontrar – Una heurística es una técnica que aumenta la eficiencia de un proceso de búsqueda. El objetivo es guiar al proceso de búsqueda en la dirección más provechosa sugiriendo el camino a seguir cuando hay más de una opción. – En general no se conseguirán resultados óptimos (la mejor solución), pero si resultados de buena calidad en tiempo razonable. – Se utiliza en problemas complejos donde aparece explosión combinatoria – Las heurísticas pueden ser: • generales • de propósito especial El matemático suizo Leonard Euler planteó y resolvió a la vez el "problema del movimiento del caballo" (en el ajedrez) y el de la “existencia de cuadrados mágicos de 8x8”. El primero se preguntaba si se puede recorrer con el caballo (y su peculiar movimiento) todas las casillas del tablero sin repetir posición (sigue el orden de los dígitos en el cuadrado mágico de Euler a partir del uno). 1 30 47 5 28 43 48 31 46 2 49 29 4 44 25 8 6 27 42 33 16 19 15 34 20 9 40 24 39 10 23 3 32 45 41 26 7 ¿Podrán terminarlo? 5 18 14 35 17 36 13 21 12 37 22 38 11