Diseño Estructurado de Algoritmo
1 Sesión No. 8 Nombre: Estructuras Algorítmicas. Primera parte. Objetivo de la sesión: Al concluir la sesión el estudiante identificará las características y usos de las principales estructuras algorítmicas secuenciales para asignación de datos dentro de un algoritmo. Contextualización A qué crees se refiere el término estructura? Como recordaremos, un algoritmo puede ser aplicado en todo, con el único requisito de que funcione paso a paso. En los algoritmos se utilizan distintos tipos de estructuras según el problema que se desea resolver, basándose en el desarrollo de la solución de un problema porque nos muestra el camino que se debe seguir. A lo largo de la historia existen distintas estructuras de programación, algunas basadas en modelos matemáticos utilizando distintos tipos de datos como: Números Símbolos Gráficas Todos estos datos trabajan en conjunto permitiendo mediante el empleo de variables realizar procesos que lleven a la solución de problemas, estas estructuras son clasificadas según su complejidad:
2 Introducción al Tema Sabes para que son utilizadas las estructuras? Los algoritmos son necesarios para el desarrollo de programas, el método para resolver un problema se basa en el uso de estructuras. Una estructura es la manera en cómo se organizan los datos para que su manipulación resulte sencilla. Hablando de una estructura de datos, ésta se define como la relación que existe entre los datos y las operaciones que se pueden realizar sobre ellos. Son herramientas que permiten la solución de problemas mediante el uso de computadoras. Después de que se realizó el diagrama de flujo y el pseudocódigo, con lo que se puede trabajar únicamente es con el diseño de estructuras de programación. En esta sesión se describirá de forma detallada dos de las estructuras. La primera es la denominada secuencial, se refiere al conjunto de pasos que permiten realizar una actividad y que guardan relación directa (Hidalgo C. Fernando, 2012). La segunda estructura es la de Asignación, una estructura de este tipo consiste en la asignación de una expresión a un identificador, comúnmente llamado variable, válido en un lenguaje de programación, (Cerquera Rojas Yamil Armando, 2001).
3 Explicación Secuenciales A qué crees que se refiere el término secuencial? Como lo dice su nombre, las estructuras secuenciales llevan un orden, esto quiere decir que la instrucción o continuidad de pasos de un programa siempre acompaña a otra en el orden en el que están escritas, de forma consecutiva. De tal modo que la salida de una instrucción es la entrada de la siguiente durante todo un proceso, si una instrucción no ha sido resuelta correctamente, el proceso se detiene. Se puede representar de forma gráfica: Las estructuras secuenciales cuentan con unas series de características: Es importante que los pasos lleven numeración. Siempre se debe señalar el comienzo del algoritmo con la palabra INICIO. Cuando se termine el algoritmo se debe indicar con la palabra FIN. Cada paso debe especificar el proceso a realizar. Todos los pasos deben llevar una secuencia.
4 La estructura secuencial puede ser representada de la siguiente forma basada en el diagrama de flujo. INICIO Acción 1 Acción 2 Acción N FINI 1.-INICIO 6.-FIN 2.-Declaracion de variables; 3.-Accion 1; 4.-Accion 2; 5.-Accion N; Sabes a qué se le atribuye el término Asignación? El término asignación se refiere al valor que se le da a un identificador, que como lo vimos en una de las sesiones, también se le puede llamar variable. Al nombre de la variable se le asigna un valor, el cual se dirige a una zona de la memoria y le permite al programador realizar diversos procesos.
Se puede representar de forma gráfica como: DISEÑO ESTRUCTURADO DE ALGORITMO 5 Variable Expresión La Asignación se clasifica de la siguiente manera: 1. Simple: Esta estructura hace referencia a el uso de una sola variable, literal o constante. Sólo pasa un valor que no cambia a una variable. Ejemplo: a=20 2.- Contador: Es usada como un verificador, representa el número de veces que se realiza un proceso. Ejemplo: a=a+1 3.- Acumulador: En un proceso es utilizado como el almacenamiento de datos por medio de una operación matemática, que es la suma. Ejemplo a= a + b 4.-De trabajo: Permite asignarle a una variable el resultado de una operación matemática, involucrando operadores, datos y variables. Ejemplo: a=b-c+4*2
6 Conclusión El uso de estructuras nos permite tener una secuencia, un orden al momento de realizar un programa. En el caso de la estructura secuencial se debe tener una idea muy clara del problema que se desea solucionar, porque la forma de aplicarlo solamente funcionará si la metodología va de forma sucesiva. Si una de las instrucciones no funciona el programa no se puede ejecutar, debido a que todas están ligadas, dependen del resultado que arroje la primera. Si nuestro algoritmo lleva operaciones matemáticas se deben generar variables, a éstas se les asigna un valor que es dirigido por medio de un nombre a una parte de la memoria. Por qué crees que es importante el uso de estructuras al momento de programar? Qué problemas puedes evitar si las utilizas de forma adecuada? Existen otras estructuras que brindan un mayor apoyo para la solución de problemas, con ayuda de la siguiente sesión aprenderás a distinguir las estructuras condicionales, de entrada y salida.
7 Para aprender más Sabes cómo realizar un algoritmo con las estructuras vistas en esta sesión? En este video se muestra de forma práctica la aplicación de las estructuras Guía 2 Lección 1: Algoritmos secuenciales. (2012). Consultado el 4 de junio de 2014: http://youtu.be/izwmamiatjk Guía 2 Lección 2: Construcción de algoritmos. Consultado el 4 de junio de 2014: http://youtu.be/b2faiteihpy Guía 2 Lección 3: Estructura de un algoritmo secuencial. Consultado el 4 de junio de 2014: http://youtu.be/h-vychamgm8 Por medio de este enlace encontrarás la definición y un ejemplo de la estructura secuencial: Hidalgo, F. (2012). Estructura secuencial. Consultado el 20 de Marzo del 2013: http://www.slideshare.net/fernandohidalgoc/estructura-secuencial- 11162122
8 Actividad de Aprendizaje Instrucciones: Con el objetivo de reforzar los conocimientos adquiridos a lo largo de esta sesión, ahora construirás una tabla donde en relación a los problemas planteados y resueltos durante esta sesiones (2 y 3) identifiques qué tipo de asignaciones se están realizando, por ejemplo: Retomando el ejemplo del cálculo del área de un cuadrado Asignación Simple Contador Acumulador De trabajo Lado = 4 x Área = Lado * Lado x Puedes realizarlo en cualquier programa especializado, al final tendrás que guardarlo como PDF, con la finalidad de subirlo a la plataforma. Recuerda que esta actividad te permitirá determinar qué tipo de asignación estás llevando a cabo en la solución de diversos problemas. Se tomará en cuenta lo siguiente: Tus datos generales Referencias bibliográficas Ortografía y redacción Título Resumen Representación gráfica
9 Cibergrafía Algoritmos y estructuras de programación. (2009). Consultado el 20 de Marzo del 2013: http://departamento.us.es/edan/php/asig/licfis/lfipc/tema5fispc0809.pdf Cerquera, Y. (2012). Algorítmica para programación. Consultado el 20 de Marzo del 2013: http://es.scribd.com/doc/4079447/37/estructura-de-asignacion Hidalgo, F. (2012). Estructura secuencial. Consultado el 20 de Marzo del 2013: http://www.slideshare.net/fernandohidalgoc/estructura-secuencial- 11162122