Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ndice
[ocultar]
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, estas pueden ser construidas mediante las tres bsicas citadas.
Historia[editar]
Fundamentacin terica[editar]
El teorema del programa estructurado proporciona la base terica de la programacin
estructurada. Seala que la combinacin de las tres estructuras bsicas, secuencia,
seleccin e iteracin, son suficientes para expresar cualquier funcin computable. Esta
observacin no se origin con el movimiento de la programacin estructurada. Estas
estructuras son suficientes para describir el ciclo de instruccin de una unidad central de
procesamiento, as como el funcionamiento de una mquina de Turing. Por lo tanto un
procesador siempre est ejecutando un "programa estructurado" en este sentido, incluso si
las instrucciones que lee de la memoria no son parte de un programa estructurado. Sin
embargo, los autores usualmente acreditan el resultado a un documento escrito en 1966
por Bhm y Jacopini, posiblemente porque Dijkstra haba citado este escrito. El teorema
del programa estructurado no responde a cmo escribir y analizar un programa
estructurado de manera til. Estos temas fueron abordados durante la dcada de 1960 y
principio de los aos 1970, con importantes contribuciones de Dijkstra, Robert W.
Floyd, Tony Hoarey y David Gries.
Debate[editar]
P. J. Plauger, uno de los primeros en adoptar la programacin estructurada, describi su
reaccin con el teorema del programa estructurado:
Nosotros los conversos ondeamos esta interesante pizca de noticias bajo las narices de los
recalcitrantes programadores de lenguaje ensamblador que mantuvieron trotando adelante
retorcidos bits de lgica y diciendo, 'Te apuesto que no puedes estructurar esto'. Ni la prueba por
Bhm y Jacopini, ni nuestros repetidos xitos en escribir cdigo estructurado, los llevaron un da
antes de lo que estaban listos para convencerse.3
Donald Knuth acept el principio de que los programas deben escribirse con
demostratividad en mente, pero no estaba de acuerdo (y an est en
desacuerdo)[cita requerida] con la supresin de la sentencia GOTO. En su escrito de 1974
Programacin estructurada con sentencias Goto, dio ejemplos donde crea que un salto
directo conduce a cdigo ms claro y ms eficiente sin sacrificar demostratividad. Knuth
propuso una restriccin estructural ms flexible: debe ser posible establecer un diagrama
de flujo del programa con todas las bifurcaciones hacia adelante a la izquierda, todas las
bifurcaciones hacia atrs a la derecha, y sin bifurcaciones que se crucen entre s. Muchos
de los expertos en teora de grafos y compiladores han abogado por permitir slo grafos de
flujo reducible[quin?][cundo?].
Los tericos de la programacin estructurada ganaron a un aliado importante en la dcada
de 1970 despus de que el investigador de IBM Harlan Mills aplicara su interpretacin de
la teora de la programacin estructurada para el desarrollo de un sistema de indexacin
para el archivo de investigacin del New York Times. El proyecto fue un gran xito de la
ingeniera, y los directivos de otras empresas lo citaron en apoyo de la adopcin de la
programacin estructurada, aunque Dijkstra critic las maneras en que la interpretacin de
Mills difera de la obra publicada.
Tan tarde como 1987 fue todava posible elevar la cuestin de la programacin
estructurada en una revista de ciencia de la computacin. Frank Rubin lo hizo en ese ao,
con una carta, 'La sentencia GOTO considerada daina' considerada daina?.
Numerosas objeciones siguieron, incluyendo una respuesta de Dijkstra, que criticaba
duramente a Rubin y las concesiones que otros escritores hicieron cuando le
respondieron.
Resultado[editar]
A finales del siglo XX casi todos los cientficos estn convencidos de que es til aprender y
aplicar los conceptos de programacin estructurada. Los lenguajes de programacin de
alto nivel que originalmente carecan de estructuras de programacin,
como FORTRAN, COBOL y BASIC, ahora las tienen.
Nuevos paradigmas[editar]
Posteriormente a la programacin estructurada se han creado nuevos paradigmas tales
como la programacin modular, la programacin orientada a objetos, programacin por
capas, etc., y el desarrollo de entornos de programacin que facilitan la programacin de
grandes aplicaciones y sistemas.
Referencias[editar]
1. Volver arriba Bhm, Jacopini. "Flow diagrams, turing machines and languages with only
two formation rules" Comm. ACM, 9(5):366-371, May 1966
2. Volver arriba Edsger Dijkstra (marzo de 1968). Go To Statement Considered
Harmful. Communications of the ACM (PDF) 11 (3): 147-148. doi:10.1145/362929.362947. The
unbridled use of the go to statement has as an immediate consequence that it becomes
terribly hard to find a meaningful set of coordinates in which to describe the process
progress. ... The go to statement as it stands is just too primitive, it is too much an invitation
to make a mess of one's program.
3. Volver arriba |apellidos = Plauger |nombre = P. J. |enlaceautor = P. J. Plauger |ttulo =
Programming on Purpose, Essays on Software Design |fecha = 12 de febrero de 1993
|editorial = Prentice-Hall |edicin = 1 |isbn = 978-0-13-721374-0 |pgina = 25 | pginas =
256
4. Volver arriba GOTO for example
Bibliografa[editar]
1. Garca-Bermejo Giner, Jos Rafael (2008). Programacin estructurada en C (1.
edicin). Pearson Prentice Hall. ISBN 978-84-8322-423-6.
2. Valls Ferrn, Jos Mara; Camacho Fernndez, David (2004). Programacin
estructurada y algoritmos en Pascal (1. edicin). Pearson Alhambra. ISBN 978-84-205-
4246-1.
3. Programacin estructurada II (1. edicin). Enseanza Tcnica y Sistemas, S.A.
2000. ISBN 978-84-85838-90-5.
4. Pseudocdigos y programacin estructurada (1. edicin). Centro Tcnico Europeo
de Enseanzas Profesionales. 1997. ISBN 978-84-8199-065-2.
5. Snchez Andrs, Mara ngeles (1996). Programacin estructurada y fundamentos
de programacin (1. edicin). McGraw-Hill / Interamericana de Espaa,
S.A. ISBN 978-84-481-0557-0.
Vase tambin[editar]
Teorema del programa estructurado
Diseo estructurado
Bloque de cdigo
Estructuras de control
Programacin por procedimientos
Programacin modular
Programacin orientada a objetos
Enlaces externos[editar]
Monografias.com: Programacin Estructurada
Ejercicios resueltos de Programacin Estructurada