Libro GRATIS Introducción a la Algoritmica

Este módulo introduce el lenguaje algorítmico que utilizaremos para expresar nuestros primeros algoritmos. En los módulos siguientes veremos, a medida que vayamos introduciendo otros conceptos, ampliaciones de este lenguaje.

El aprendizaje de la programación empieza por llevar a cabo acciones sencillas con algunas herramientas básicas y una vez asimiladas, progresamos acumuando nuevos conocimientos más complejos y avanzados con las herramientas correspondientes.

Es necesario hacer este proyecto de forma gradual y a medida que los conceptos más sencillos están bien asimilados. Por eso, es importante dominar los temas de cada módulo y especialmente de éste, que es la base de los que vienen a continuación.

Algunos de vosotros todavía os preguntaréis por qué tenemos que utilizar un lenguaje diferente del que usamos habitualmente: catalán, castellano, inglés, etc.

Así, por ejemplo, tenemos que un libro de recetas de cocina es en realidad un libro de algoritmos, donde el estado inicial de cada algoritmo presentado consiste en tener los ingredientes al alcance (y los recursos necesarios para cocinarlos) y el estado final es la presencia en la mesa de un plato con el que nos podemos chupar los dedos (o eso dice el autor del libro).

Un libro de cocina está escrito en lenguaje natural: catalán, castellano, inglés… Así pues, ¿por qué no describimos también nosotros los algoritmos en lenguaje natural?

Se dan dos importantes factores para no hacerlo. En primer lugar, el lenguaje natural presenta a menudo ambigüedades que dificultan la comprensión del mensaje que debemos transmitir. Esto nos podría llevar muchas veces a malas interpretaciones de algoritmos. Evidentemente, podemos intentar no ser ambiguos y lo podemos conseguir (con bastante esfuerzo algunas veces).

Sin embargo, hay un factor más importante. Imaginad que queremos hacer una fideuá (guiso de fideos con caldo de pescado). Como precondición, tendremos que disponer de todos los ingredientes, utensilios necesarios y elementos combustibles (gas, leña, etc.). Hasta aquí, ningún problema.

Comenzamos a describir el algoritmo. En primer lugar tenemos que trocear media cabeza de ajos. ¿Qué significa trocear? ¿Qué medida deben tener los trochos resultantes? Más adelante, el algoritmo nos indica que tenemos que poner una sartén con cuatro cucharaditas de aceite de oliva en el fuego, entre bajo y medio, y freír el ajo que tenemos troceado.

¿Qué quiere decir exactamente entre bajo y medio? Cuando éste esté un poco dorado (no demasiado), tenemos que añadirle el tomate (que tendremos pelado y troceado previamente). Bien, ¿Cuándo está el ajo un poco dorado, pero no mucho?

Todas estas preguntas las puede responder con seguridad una persona que esté acostumbrada a cocinar; pero una persona que no haya cocinado nunca en su vida será incapaz de ejecutar el algoritmo correctamente (será incapaz incluso de entenderlo).

Entonces, ¿Hasta qué nivel tenemos que describir el algoritmo? Evidentemente, depende de a quién se lo estemos explicando. Éste es el segundo problema importante con que nos encontraremos si utilizamos el lenguaje natural para describir algoritmos.

Por estas dos razones (ambigüedad y dependencia del interlocutor), necesitamos definir otro lenguaje que disponga de una sintaxis reducida, simple y precisa que permita expresar algoritmos sin ambigüedades y con la claridad y precisión necesarias para que puedan ser interpretados por cualquier procesador sin presuponer ningún conocimiento previo por su parte. Éste será nuestro lenguaje algorítmico.

DESCARGAR PDF GRATIS INTRODUCCIÓN A LA ALGORITMICA

Vistas: 1