Download Un problema concreto con números
Document related concepts
no text concepts found
Transcript
Lic. en Matemática Aplicada Matemática Computacional I UNLaM PRÁCTICA Nº1 UN PROBLEMA CONCRETO CON NÚMEROS En este primer experimento nos familiarizaremos con aspectos fundamentales del cálculo (numérico o no), a saber: cómo efectuar una operación (la idea de algoritmo), cómo ingresar datos en una máquina (la idea de notación científica). Para hacer efectivo este acercamiento decidimos utilizar, entre todos los programas disponibles, el software EXCEL; elección que está fundada en la principal ventaja de este soft que es su gran difusión: está disponible en casi cualquier máquina, y resulta familiar para casi cualquier usuario. Comencemos considerando el problema de calcular el número =12^3 (utilizando la escritura de EXCEL), como el exponente es natural podemos obtener el resultado a mano haciendo 12 × 12 × 12, aunque uno prefiere hacer la cuenta con EXCEL (o con la calculadora); como sea, el resultado obtenido es 1728. ¿Qué pasa ahora si queremos calcular 12^1734? Bueno, siempre podemos aplicar el método a mano 12 × … × 12 pero uno intuye que es un proceso agotador. Ahora bien, si queremos hacer la cuenta con EXCEL el resultado que aparece en pantalla es #NUM!, que es un mensaje de error. Ejercicio 1. Verificar que la sintaxis =12^1734 produce un mensaje de error. Leer el mensaje. Esto quiere decir que el algoritmo más sencillo para calcular el número 121734 , efectuar las multiplicaciones una a continuación de la otra, no está disponible. ¿Qué ocurrió? El número que queremos calcular es demasiado grande; la máquina trabaja con una cantidad finita de números, de manera que hay uno que es el más grande, llamémoslo 𝑁𝑚𝑎𝑥 . En este caso, el número en cuestión es mayor que 𝑁𝑚𝑎𝑥 ; fenómeno que se conoce como desborde por exceso. Ejercicio 2. Con la nomenclatura ingresada en el parágrafo anterior, hallar 𝑁𝑚𝑎𝑥 ; es decir, hallar el número más grande que puede ingresarse en EXCEL. NOTA: la máquina hace todo en base 2 y luego pasa a base 10. Así, el mayor número de máquina puede expresarse mediante 𝑁𝑚𝑎𝑥 = (2 − 10−15 ) ∗ 21023 cuya representación con 15 dígitos y base 10 es 1,79769313486232𝐸 + 308. Concluimos que el número 121734 es mayor que el más grande de los números de máquina, inmediatamente surgen algunas preguntas, a saber: (a) ¿Cuánto de grande es este número? Más precisamente, ¿cómo se mide el tamaño de un número? (b) ¿Que haya desborde quiere decir que no lo podremos calcular? Comencemos por el punto (b). La respuesta es: de ninguna manera, eso sólo quiere decir que debemos calcularlo de otra forma; aparece de manera natural la noción de algoritmo, que en este contexto significa estrategia para calcular el número 121734 . Pero ¿cuál es esa estrategia? Utilizar las propiedades de la función logaritmo: sabemos que todo número verifica la siguiente identidad, escrita utilizando la sintaxis EXCEL: 1 Lic. en Matemática Aplicada Matemática Computacional I UNLaM 𝑀 = 10^𝐿𝑂𝐺(𝑀) (1.1) Esta propiedad nos permite resolver un problema concreto, y en apariencia sencillo pues se trata de dos números naturales pequeños, empleando la calculadora pero de una manera que podemos denominar astuta. Ejercicio 3. Implementar en una planilla EXCEL el algoritmo sugerido por la identidad anterior y comparar con el algoritmo ingenuo de las multiplicaciones sucesivas. La sintaxis EXCEL utiliza las funciones ENTERO y LOG, que representan la parte entera y el logaritmo (en base 10, si se omite la base): N =12^N =N*LOG(12) =ENTERO(C1) =10^(C1-D1) Ejercicio 4. Expresar el resultado usando la función CONCATENAR. Ejercicio 5. Usar la planilla diseñada en el punto anterior para hallar la cantidad exacta de dígitos que tiene el desarrollo decimal del número 1212435 . Investigar cuánto lugar hace falta para imprimir todos los dígitos del desarrollo decimal en una página tamaño A4, con 2 cm de márgenes (laterales, superior e inferior) en tamaño 10. (Como para tener una idea del tamaño del número.) Con este ejemplo queremos mostrar cómo es posible transformar el obstáculo didáctico dado por el uso ingenuo de la máquina (obstáculo que debe ser evitado), en el obstáculo epistemológico involucrado en la noción y en las propiedades de la función logaritmo: este tipo de obstáculos son los que deben encararse y superarse para conseguir un avance real en el proceso de enseñanza y aprendizaje. En este caso, el avance estará dado por la respuesta a la pregunta (a), pues la conclusión que queremos obtener con este problema es que la función logaritmo es la que permite tener una idea del tamaño de un número: si escribimos un número en base 10, la cantidad de dígitos (es decir, el tamaño) estará dado por el primer exponente de 10 (la base utilizada para representar los números) que lo supera. Así, la cantidad de dígitos del número 1212435 es tal que podemos afirmar que se trata de un número grande. No obstante, cabe señalar que este tipo de consideraciones carecen de sentido, al menos en lo que respecta el buen uso del idioma: el adjetivo grande involucra una comparación, sea de manera tácita o explícita, de modo que un número puede ser considerado grande en un contexto pero no así en otros. Veamos un ejemplo: nadie consideraría al 4 como un número grande; pero... Ejercicio 6. Consideremos el algoritmo implícito en la sucesión A1=4; A2=4^A1; A3=4^A2; A4=4^A3 Fabricar una planilla EXCEL que calcule: por un lado, el valor numérico de los cuatro primeros términos de la sucesión, y por otro, que indique la cantidad de dígitos que tiene el desarrollo decimal de cada miembro. Prestar atención a los posibles mensajes de error y comparar con el tamaño de nuestro número grande 1212435 . Siguiendo en la línea de la aritmética, a continuación consideramos el problema de encontrar el último dígito del número 121734 en una base cualquiera B. Como antes, comenzaremos planteando un problema similar pero que pueda ser abordado de manera ingenua: por ejemplo, hallar el último dígito del desarrollo en 2 Lic. en Matemática Aplicada Matemática Computacional I UNLaM base 10 del número 37 . El algoritmo directo (ingenuo) es calcular el número 37 y luego hallar el resto en la división por 10; operación que podemos realizar a mano, pero como en el problema anterior queremos hacerlo empleando la máquina. En EXCEL el resto en la división entera puede obtenerse mediante la función RESIDUO. Ejercicio 7. Implementar el algoritmo directo en una planilla EXCEL y testearlo para diferentes valores del exponente (para simplificar la tarea dejamos fijas ambas bases: la de la exponencial y la del sistema de numeración). Observar los mensajes de error que aparecen cuando el exponente aumenta ¿a partir de qué exponente aparecen? ¿Por qué aparece el mensaje de error? Ejercicio 8. En el problema anterior, aumentar el exponente hasta que los resultados terminen en 0 ¿es correcto ese resultado? ¿Por qué? Ahora bien ¿cómo se explica este resultado? Antes de pasar a la explicación cabe destacar que en este ejemplo el abordaje ingenuo nos condujo a soluciones incorrectas: ésa es la idea, queremos mostrar con ejemplos concretos las desventajas que ofrece el uso ingenuo de la máquina; en otras palabras, ante la pregunta ¿a favor o en contra del uso de la máquina? la respuesta que intentamos defender es que no estamos a favor del uso ingenuo, estamos a favor de aprovechar las máquinas para superar los obstáculos epistemológicos. Pero volvamos al resultado incorrecto, lo que ha ocurrido es que esos números, aunque no alcanzan a desbordar la máquina (no son tan grandes), no pueden ser calculados con todos sus dígitos; EXCEL sólo ofrece 15 dígitos de modo que si el número tiene más de 15 dígitos los últimos dígitos serán reemplazados por 0. Veamos, entonces, cómo superar el escollo. La idea es aprovechar la recursividad de las potencias y un resultado teórico clave: tomar resto es un morfismo de anillos; esto quiere decir que distribuye tanto a la suma como al producto, en la notación de EXCEL el nuevo algoritmo se escribe: RESIDUO(3^N;10)=RESIDUO(3*RESIDUO(3^(N-1);10);10) (1.2) ¿Cuál es la ventaja de aplicar esta identidad? Que los números involucrados nunca superan el número 10, de modo que independientemente del exponente requerido, el valor puede ser alcanzado. Bueno, el precio que hay que pagar es el de la recursividad: hay que hacer todos los pasos intermedios. Ejercicio 9. Implementar el algoritmo en una planilla EXCEL y testearlo para el número 3125 . Observar la periodicidad de la tabla y usarla para calcular el número 33241 sin necesidad de hacer todos los pasos intermedios. Ejercicio 10. En el ejercicio anterior se sugiere una mejora para el algoritmo 1.2. Diseñar una planilla EXCEL que tome como dato de entrada el exponente b y devuelva el último dígito en base 10 del número 3𝑏 . ¿qué haría falta para tener una planilla que tome como dato de entrada también a la base de la exponencial y a la base del sistema de numeración? Los resultados de los ejercicios anteriores nos permiten descubrir el teorema de Fermat; de hecho esta herramienta nos facilita la resolución de otro problema 3 Lic. en Matemática Aplicada Matemática Computacional I UNLaM importante que suele presentarse en el aula, que podemos resumir con las preguntas ¿es periódico el desarrollo decimal del número 1/118? ¿es periódico puro o mixto? ¿cuántos dígitos tiene el período? ¿cuántos dígitos tiene la parte no periódica? Dato: este es un número periódico mixto con 58 cifras en el período, cantidad que no puede ser detectada con las herramientas habituales de cálculo numérico... ¡usadas de forma ingenua! 4