Você está na página 1de 5

TAREA:1

CINTHIA EVELENIS SANDOVAL CASTILLO

Programacin Estructurada
La programacin estructurada es una tcnica para escribir programas de computadora. Para ello se utilizan nicamente tres estructuras: secuencia, seleccin e iteracin; siendo innecesario el uso de la instruccin o instrucciones de transferencia incondicional (GOTO, EXIT FUNCTION, EXIT SUB o mltiples RETURN). Hoy en da las aplicaciones informticas son mucho ms ambiciosas que las necesidades de programacin existentes en los aos 1960, principalmente debido a las aplicaciones grficas, por lo que las tcnicas de programacin estructurada no son suficientes. Ello ha llevado al desarrollo de nuevas tcnicas, tales como la programacin orientada a objetos y el desarrollo de entornos de programacin que facilitan la programacin de grandes aplicaciones.

Orgenes de la Programacin Estructurada


A finales de los aos 1970 surgi una nueva forma de programar que no solamente daba lugar a programas fiables y eficientes, sino que adems estaban escritos de manera que facilitaba su comprensin posterior. El teorema del programa estructurado, propuesto por Bhm-Jacopini, demuestra que todo programa puede escribirse utilizando nicamente las tres instrucciones de control siguientes: Secuencia Instruccin condicional. Iteracin (bucle de instrucciones) con condicin al principio.

Solamente con estas tres estructuras se pueden escribir todos los programas y aplicaciones posibles. Si bien los lenguajes de programacin tienen un mayor repertorio de estructuras de control, stas pueden ser construidas mediante las tres bsicas citadas.

Estructura secuencial
Una estructura de programa es secuencial si las instrucciones se ejecutan una tras otra, a modo de secuencia lineal, es decir que una instruccin no se ejecuta hasta que finaliza la anterior, ni se bifurca el flujo del programa. Ejemplo: INPUT x INPUT y Auxiliar = x x= y y= auxiliar PRINT x PRINT y Esta secuencia de instrucciones permuta los valores de x e y, con ayuda de una variable auxiliar, intermedia.

TAREA:1

CINTHIA EVELENIS SANDOVAL CASTILLO

1 Se guarda una copia del valor de x en auxiliar. 2 Se guarda el valor de y en x, perdiendo su valor anterior, pero se mantiene una copia del contenido en auxiliar. 3 Se copia a y el valor de auxiliar, que es el valor inicial de x. El resultado es el intercambio de los valores entre x e y, en tres operaciones secuenciales.

Estructura selectiva o de seleccin


La estructura selectiva permite que la ejecucin del programa se bifurque a una instruccin (o conjunto) u otra/s, segn un criterio o condicin lgica establecida, slo uno de los caminos en la bifurcacin ser el tomado para ejecutarse. Ejemplo: IF a > b THEN PRINT a ; " es mayor que " ; b ELSE PRINT a ; " no es mayor que " ; b END IF La instruccin selectiva anterior puede presentar uno de dos mensajes: a es mayor que b o a no es mayor que b, segn el resultado de la comparacin entre a y b; si el resultado de a > b es verdadero, se presenta el primer mensaje, si es falso se exterioriza el segundo. Las palabras clave IF, THEN, ELSE, y END IF; constituyen la propia estructura de la instruccin condicional (palabra reservadas), proporcionada por el lenguaje, el usuario no debe utilizar sus nombres salvo para este fin. El caso ejemplo se ha codificado en BASIC. IF seala el comienzo de la instruccin condicional, y se espera que despus siga la condicin lgica de control de la instruccin. THEN seala el fin de la condicin, y despus estar la instruccin a ejecutar si la condicin es verdadera. ELSE es opcional, le sigue la instruccin que se ejecutar si la condicin es falsa. END IF indica el final de la estructura, luego de sta el programa seguir su curso.

Ampliando un poco el ejemplo anterior, con estructuras anidadas: IF a > b THEN PRINT a ; " es mayor que " ; b ELSEIF a < b THEN PRINT a ; " es menor que " ; b ELSE PRINT a ; " es igual que " ; b END IF Este ejemplo permite considerar situaciones en las que se tiene ms de dos alternativas. En este caso se ha considerado tres, pero hay situaciones en las que deben considerarse ms casos y para ellos se puede repetir las veces que sea necesario la opcional ELSEIF.

TAREA:1

CINTHIA EVELENIS SANDOVAL CASTILLO

Estructura iterativa
Un bucle iterativo o iteracin de una secuencia de instrucciones, hace que se repita su ejecucin mientras se cumpla una condicin, el nmero de iteraciones normalmente est determinado por el cambio en la condicin dentro del mismo bucle, aunque puede ser forzado o explcito por otra condicin. Ejemplo: a= 0 b= 7 DO WHILE b > a PRINT a a= a + 1 LOOP Esta instruccin tiene tres palabras reservadas WHILE, DO y LOOP. DO WHILE: seala el comienzo del bucle ("haga mientras") y despus de estas palabras se espera la condicin lgica de repeticin, si la condicin es verdadera pasa el control al cuerpo del bucle, en caso contrario el flujo salta directamente al final de la estructura, saliendo de la misma. LOOP: seala el final del cuerpo de la estructura de bucle.

El bucle mientras, se repite mientras la condicin sea verdadera, esta condicin se comprueba o chequea antes de ingresar al cuerpo del bucle, por lo que el mismo puede que no se ejecute nunca (cuando la condicin es falsa desde un principio) o bien que se repita tantas veces como resulte y mientras la condicin sea cierta. En el ejemplo se tienen definidas dos variables a y b, que al iniciarse el bucle contienen los valores a=0 y b=7. La condicin del bucle es b > a. Si a=0 y b=7. la condicin es verdadera, en el cuerpo del bucle se escribe el valor de a en pantalla y luego se incrementa esa variable en una unidad. Entonces pasa a ser a=1 y b=7. (Se repite la secuencia) Cuando a=6 y b=7. la condicin sigue siendo verdadera, se escribe el valor de a en pantalla y se incrementa en una unidad. Cuando se llega a que a=7 y b=7. Entonces la condicin ya resulta falsa y la instruccin WHILE finaliza, saliendo por LOOP. La salida por pantalla de este ejemplo es 0 1 2 3 4 5 6, y se iter 7 veces. El lenguaje utilizado en el ejemplo (BASIC), adems de tener otras del tipo iterativas, permite utilizar la misma estructura indicada, pero de la siguiente forma:

TAREA:1

CINTHIA EVELENIS SANDOVAL CASTILLO

a= 0 b= 7 WHILE b > a PRINT a a= a + 1 WEND Que es absolutamente anloga, en ste formato la palabra reservada WEND marca el fin del bucle y no se utiliza ni DO ni LOOP.

Anidamiento
El cuerpo de cualquier estructura puede ser instrucciones simples u otras estructuras, que a su vez pueden contener a otras. Ejemplo: CLS INPUT "Valor entero para a:"; a INPUT "Valor entero para b:"; b IF a > b THEN REM hacer intercambio de variables Auxiliar = a a=b b = auxiliar REM imprimir diferencia en escala de uno en uno DO WHILE auxiliar > a Auxiliar = auxiliar - 1 PRINT auxiliar LOOP ELSE REM no hacer nada END IF PRINT PRINT a; b En el ejemplo la sentencia o instruccin CLS slo tiene el efecto de "limpiar" la pantalla al inicio de la ejecucin del programa. Las instrucciones INPUT permiten que el operador ingrese, desde teclado y con un mensaje previo acorde, los valores deseados para las variables a y b. La instruccin no ejecutable REM permite la insercin de comentarios en cualquier parte del programa, donde el programador lo considere necesario; constituye una buena prctica de programacin comentar adecuadamente todos los programas, de este modo se clarifica notablemente su lectura, durante su desarrollo y posterior para modificacin o mantenimiento. En la anterior estructura IF bien se puede omitir la porcin ELSE, ya que no hay cuerpo all, de modo que lo siguiente es completamente equivalente:

CLS

TAREA:1

CINTHIA EVELENIS SANDOVAL CASTILLO

INPUT "Valor entero para a:"; a INPUT "Valor entero para b:"; b IF a > b THEN REM hacer intercambio de variables auxiliar = a a=b b = auxiliar REM imprimir diferencia en escala de uno en uno DO WHILE auxiliar > a auxiliar = auxiliar - 1 PRINT auxiliar LOOP END IF PRINT PRINT a; b

Caractersticas de la programacin Estructurada


1. Los programas son ms fciles de entender, pueden ser ledos de forma secuencial, no hay necesidad de hacer engorrosos seguimientos en saltos de lnea (GOTO) dentro de los bloques de cdigo para intentar entender la lgica. 2. La estructura de los programas es clara, puesto que las instrucciones estn ms ligadas o relacionadas entre s. 3. Reduccin del esfuerzo en las pruebas y depuracin. El seguimiento de los fallos o errores del programa ("debugging") se facilita debido a su estructura ms sencilla y comprensible, por lo que los errores se pueden detectar y corregir ms fcilmente. 4. Reduccin de los costos de mantenimiento. Anlogamente a la depuracin, durante la fase de mantenimiento, modificar o extender los programas resulta ms fcil. 5. Programas son ms sencillos y ms rpidos de confeccionar (y se facilita su optimizacin). 6. Los bloques de cdigo son casi auto-explicativos, lo que reduce y facilita la documentacin. 7. Las instrucciones de salto, GOTO, quedan reservadas para construir las instrucciones bsicas, si fuera realmente imprescindible. Aunque no se usan de forma directa, por estar prohibida su utilizacin, estn incluidas implcitamente en las instrucciones de seleccin e iteracin. 8. Un programa escrito de acuerdo a los principios de programacin estructurada no solamente tendr una mejor estructura sino tambin una excelente presentacin. 9. Se incrementa el rendimiento de los programadores, comparada con la forma tradicional que utiliza GOTO. La programacin estructurada ofrece estos beneficios, pero no se la debe considerar como una panacea ya que el desarrollo de programas es, esencialmente, una tarea de dedicacin, esfuerzo y creatividad; programar es casi un arte.

Você também pode gostar