SlideShare una empresa de Scribd logo
1 de 29
Programación
Estructurada
Estructura?
La estructura es la disposición y orden de las
partes dentro de un todo. También puede
entenderse como un sistema
de conceptos coherentes enlazados, cuyo
objetivo es precisar la esencia del objeto de
estudio. Tanto la realidad como
el lenguaje tienen estructura. Modo de estar
organizadas u ordenadas las partes de un todo.
La programación estructurada es un paradigma de programación
orientado a mejorar la claridad, calidad y tiempo de desarrollo de
un programa de computadora, utilizando únicamente subrutinas, y
tres estructuras: secuencia, selección (if y switch), e iteración
(bucles for y while); considerando innecesario y contraproducente
el uso de la instrucción de transferencia incondicional (GOTO),
que podría conducir a "código espagueti", que es mucho más
difícil seguir y de mantener, y era la causa de muchos errores de
programación.
El código spaghetti es un término peyorativo (uso del lenguaje con una
finalidad negativa) para los programas de computación que tienen una
estructura de control de flujo compleja e incomprensible. Su nombre
deriva del hecho que este tipo de código parece asemejarse a un plato
de espaguetis, es decir, un montón de hilos intrincados y anudados.
Tradicionalmente suele asociarse este estilo de programación con
lenguajes básicos y antiguos, donde el flujo se controlaba mediante
sentencias de control muy primitivas como go to y utilizando números
de línea. Un ejemplo de lenguaje que invitaba al uso de código
spaghetti es el QBasic de Microsoft en sus primeras versiones.
No hay nada malo en escribir código spaghetti inicialmente si esto
facilita la comprensión del problema, lo incorrecto es considerar el
código como acabado dejándolo de ésta forma. Lo correcto es iterar
sobre varios repasos del código usando lo que se conoce como
refactorización. Las modernos entornos de programación como
Eclipse o Visual Studio incluso ya incorporan funciones automáticas
que facilitan esta tarea.
Utilizando go to
Todo comenzó así:
En los años 60 solo se podía definir el flujo de un
programa a base de poner if's anidados y variables
booleanas para decidir la lógica. Mas adelante ya se
podían escribir funciones, de lo mas general a lo mas
especifico y en la actualidad con la programación
orientada objetos hay conceptos como la modularidad,
abstracción, encapsulamiento, desacoplamiento,
herencia hay herramientas y conceptos mas que
suficientes como para evitar escribir este tipo de código.
A finales de los años 1970 surgió una nueva forma de
programar que no solamente daba lugar a programas fiables y
eficientes, sino que además estaban escritos de manera que
facilitaba su mejor comprensión, no sólo proveyendo ventajas
durante la fase de desarrollo, sino también posibilitando una
más sencilla modificación posterior.
El teorema del programa estructurado, propuesto por Böhm-
Jacopini, demuestra que todo programa puede escribirse
utilizando únicamente las tres instrucciones de control
siguientes:
Secuencia.
Instrucción condicional.
• Iteración (bucle de instrucciones) con
condición al principio.
• Solamente con estas tres estructuras se pueden
escribir todos los programas y aplicaciones
posibles. Si bien los lenguajes de programación
tienen un mayor repertorio de estructuras de
control, éstas pueden ser construidas mediante las
tres básicas citadas.
El teorema del programa estructurado: proporciona la base teórica de la
programación estructurada. Señala que tres maneras de combinar programas
son suficientes para expresar cualquier función computable: secuencia,
selección, e iteración. Esta observación no se originó con el movimiento de la
programación estructurada; Estas estructuras son suficientes para describir el
ciclo de instrucción de una unidad central de procesamiento, así como el
funcionamiento de una máquina de Turing(sirve para explicar las funciones de
un CPU, la lógica de cualquier algoritmo de computador). 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 de 1966 por Böhm y Jacopini, posiblemente porque
Dijkstra había citado este escrito. El teorema del programa estructurado no
responde a cómo escribir y analizar un programa estructurado de manera útil.
Estos temas fueron abordados durante la década de 1960 y principio de los
años 1970, con importantes contribuciones de Dijkstra, Robert W. Floyd, Tony
Hoarey, y David Gries.
Es posible hacer la programación estructurada en cualquier
lenguaje de programación, aunque es preferible usar algo
como un lenguaje de programación procedimental(los
lenguajes de programación clásica se llaman también
procedimentales, gracias a la capacidad de invocar la
ejecución de procedimientos). Algunos de los lenguajes
utilizados inicialmente para programación estructurada
incluyen: ALGOL, Pascal, PL/I y Ada – pero la mayoría de los
nuevos lenguajes programación procedimentales desde
entonces han incluido características para fomentar la
programación estructurada y a veces deliberadamente
omiten características en un esfuerzo para hacer más difícil
la programación no estructurada.
Posterior a la programación estructurada se han creado
nuevos paradigmas tales como la programación modular, la
programación orientada a objetos, programación por capas,
etc, y el desarrollo de entornos de programación que facilitan
la programación de grandes aplicaciones y sistemas.
ProgramaciónEstructuradaExpli

Más contenido relacionado

La actualidad más candente

La actualidad más candente (19)

Programacion
ProgramacionProgramacion
Programacion
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
unidad 2
unidad 2unidad 2
unidad 2
 
Programacion estructurada by Marcos Acosta
Programacion estructurada by Marcos AcostaProgramacion estructurada by Marcos Acosta
Programacion estructurada by Marcos Acosta
 
Programación Estructurada
Programación EstructuradaProgramación Estructurada
Programación Estructurada
 
Presentación1
Presentación1Presentación1
Presentación1
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programación esctructurada2
Programación esctructurada2Programación esctructurada2
Programación esctructurada2
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Trabajo programacion ii sergio ramos (1)
Trabajo programacion ii   sergio ramos (1)Trabajo programacion ii   sergio ramos (1)
Trabajo programacion ii sergio ramos (1)
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacion estructurado
Programacion estructuradoProgramacion estructurado
Programacion estructurado
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Pseudocodigos
Pseudocodigos Pseudocodigos
Pseudocodigos
 
El algoritmo
El algoritmoEl algoritmo
El algoritmo
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 

Destacado

Compilacion de un Programa en C++
Compilacion de un Programa en C++ Compilacion de un Programa en C++
Compilacion de un Programa en C++ flickergrupoupt
 
Editores de código y artes marciales ( odio eterno al WYSIWYG )
Editores de código y artes marciales ( odio eterno al WYSIWYG )Editores de código y artes marciales ( odio eterno al WYSIWYG )
Editores de código y artes marciales ( odio eterno al WYSIWYG )Pablo Bernardo
 
resolucion de problemas: Algoritmos y programas
resolucion de problemas: Algoritmos y programas resolucion de problemas: Algoritmos y programas
resolucion de problemas: Algoritmos y programas panchofronteras
 
Codificación. Pdf Código Fuente, Objeto y Ejecutable.
Codificación. Pdf Código Fuente, Objeto y Ejecutable.Codificación. Pdf Código Fuente, Objeto y Ejecutable.
Codificación. Pdf Código Fuente, Objeto y Ejecutable.Isabel Gómez
 
Metodologías de desarrollo de software
Metodologías de desarrollo de softwareMetodologías de desarrollo de software
Metodologías de desarrollo de softwareJesenia Escobar
 
Introducción A La Programación
Introducción A La ProgramaciónIntroducción A La Programación
Introducción A La ProgramaciónPablo Parola
 
Pseudocódigo
PseudocódigoPseudocódigo
PseudocódigoAlixg19
 
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez SanchezConcentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez SanchezManuel Gonzalez
 
Ada análisis y diseño estructurado moderno - yourdon
Ada análisis y diseño estructurado moderno - yourdonAda análisis y diseño estructurado moderno - yourdon
Ada análisis y diseño estructurado moderno - yourdonVeritto Gonzalez
 
Entorno de desarrollo en c++
Entorno de desarrollo en c++Entorno de desarrollo en c++
Entorno de desarrollo en c++Lymobe
 
Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.Isabel Gómez
 
2.1 Lenguaje de Programación C y su Entorno
2.1 Lenguaje de Programación C y su Entorno2.1 Lenguaje de Programación C y su Entorno
2.1 Lenguaje de Programación C y su EntornoMeztli Valeriano Orozco
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacionguest9a91e2
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujoPako Nuñez
 
Logica y Algoritmos
Logica y AlgoritmosLogica y Algoritmos
Logica y AlgoritmosDSGP
 
Expo diagrama de flujo de la fabricacion de cemento
Expo diagrama de flujo de la fabricacion de cementoExpo diagrama de flujo de la fabricacion de cemento
Expo diagrama de flujo de la fabricacion de cementosilverjetst
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacionneyvajms
 
El Proceso De Desarrollo De Software
El Proceso De Desarrollo De SoftwareEl Proceso De Desarrollo De Software
El Proceso De Desarrollo De Softwareahias arosemena
 

Destacado (20)

Compilacion de un Programa en C++
Compilacion de un Programa en C++ Compilacion de un Programa en C++
Compilacion de un Programa en C++
 
Editores de código y artes marciales ( odio eterno al WYSIWYG )
Editores de código y artes marciales ( odio eterno al WYSIWYG )Editores de código y artes marciales ( odio eterno al WYSIWYG )
Editores de código y artes marciales ( odio eterno al WYSIWYG )
 
resolucion de problemas: Algoritmos y programas
resolucion de problemas: Algoritmos y programas resolucion de problemas: Algoritmos y programas
resolucion de problemas: Algoritmos y programas
 
Codificación. Pdf Código Fuente, Objeto y Ejecutable.
Codificación. Pdf Código Fuente, Objeto y Ejecutable.Codificación. Pdf Código Fuente, Objeto y Ejecutable.
Codificación. Pdf Código Fuente, Objeto y Ejecutable.
 
Metodologías de desarrollo de software
Metodologías de desarrollo de softwareMetodologías de desarrollo de software
Metodologías de desarrollo de software
 
Introducción A La Programación
Introducción A La ProgramaciónIntroducción A La Programación
Introducción A La Programación
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez SanchezConcentrado del Modulo  Soluciones de Problemas - Manuel Gonzalez Sanchez
Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
 
Ada análisis y diseño estructurado moderno - yourdon
Ada análisis y diseño estructurado moderno - yourdonAda análisis y diseño estructurado moderno - yourdon
Ada análisis y diseño estructurado moderno - yourdon
 
Entorno de desarrollo en c++
Entorno de desarrollo en c++Entorno de desarrollo en c++
Entorno de desarrollo en c++
 
Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.Codificación. Código Fuente, Objeto y Ejecutable.
Codificación. Código Fuente, Objeto y Ejecutable.
 
2.1 Lenguaje de Programación C y su Entorno
2.1 Lenguaje de Programación C y su Entorno2.1 Lenguaje de Programación C y su Entorno
2.1 Lenguaje de Programación C y su Entorno
 
Proceso de Compilacion
Proceso de CompilacionProceso de Compilacion
Proceso de Compilacion
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Logica y Algoritmos
Logica y AlgoritmosLogica y Algoritmos
Logica y Algoritmos
 
Expo diagrama de flujo de la fabricacion de cemento
Expo diagrama de flujo de la fabricacion de cementoExpo diagrama de flujo de la fabricacion de cemento
Expo diagrama de flujo de la fabricacion de cemento
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
 
Programación!! . .
Programación!! . .Programación!! . .
Programación!! . .
 
El Proceso De Desarrollo De Software
El Proceso De Desarrollo De SoftwareEl Proceso De Desarrollo De Software
El Proceso De Desarrollo De Software
 

Similar a ProgramaciónEstructuradaExpli

Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructuradaVivi Marquez
 
Programacion estructurado
Programacion estructuradoProgramacion estructurado
Programacion estructuradoAgapito26
 
Unidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados iiUnidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados iinestorgarcia250
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructuradaRvenchoCrb
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradalindacajaperuiz
 
Unidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados iiUnidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados iinestorgarcia250
 
Programación esctructurada2
Programación esctructurada2Programación esctructurada2
Programación esctructurada2betshycastillo
 
Programacion Basica
Programacion Basica Programacion Basica
Programacion Basica Yoconditap
 
Presentación de programacion
Presentación  de programacionPresentación  de programacion
Presentación de programacionlajokito
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradajaninaplaza
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaEduardo Bazurto
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de ProgramaciónJose Sanchez
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaALfonsx Viejo
 
PROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADAPROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADATeDy j Sanchez
 
Que es programacion
Que es      programacionQue es      programacion
Que es programacionjhankey
 

Similar a ProgramaciónEstructuradaExpli (16)

Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Programacion estructurado
Programacion estructuradoProgramacion estructurado
Programacion estructurado
 
Unidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados iiUnidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados ii
 
Programacion estructurada
Programacion estructuradaProgramacion estructurada
Programacion estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Unidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados iiUnidad vi sistemas mecanizados ii
Unidad vi sistemas mecanizados ii
 
Programación esctructurada2
Programación esctructurada2Programación esctructurada2
Programación esctructurada2
 
Programacion Basica
Programacion Basica Programacion Basica
Programacion Basica
 
Presentación de programacion
Presentación  de programacionPresentación  de programacion
Presentación de programacion
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de Programación
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Tarea 1
Tarea 1Tarea 1
Tarea 1
 
PROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADAPROGRAMACION ESTRUCTURADA
PROGRAMACION ESTRUCTURADA
 
Que es programacion
Que es      programacionQue es      programacion
Que es programacion
 

Último

El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Luis Olivera
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 

Último (20)

El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 

ProgramaciónEstructuradaExpli

  • 2.
  • 3. Estructura? La estructura es la disposición y orden de las partes dentro de un todo. También puede entenderse como un sistema de conceptos coherentes enlazados, cuyo objetivo es precisar la esencia del objeto de estudio. Tanto la realidad como el lenguaje tienen estructura. Modo de estar organizadas u ordenadas las partes de un todo.
  • 4. La programación estructurada es un paradigma de programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa de computadora, utilizando únicamente subrutinas, y tres estructuras: secuencia, selección (if y switch), e iteración (bucles for y while); considerando innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a "código espagueti", que es mucho más difícil seguir y de mantener, y era la causa de muchos errores de programación.
  • 5.
  • 6. El código spaghetti es un término peyorativo (uso del lenguaje con una finalidad negativa) para los programas de computación que tienen una estructura de control de flujo compleja e incomprensible. Su nombre deriva del hecho que este tipo de código parece asemejarse a un plato de espaguetis, es decir, un montón de hilos intrincados y anudados. Tradicionalmente suele asociarse este estilo de programación con lenguajes básicos y antiguos, donde el flujo se controlaba mediante sentencias de control muy primitivas como go to y utilizando números de línea. Un ejemplo de lenguaje que invitaba al uso de código spaghetti es el QBasic de Microsoft en sus primeras versiones.
  • 7.
  • 8. No hay nada malo en escribir código spaghetti inicialmente si esto facilita la comprensión del problema, lo incorrecto es considerar el código como acabado dejándolo de ésta forma. Lo correcto es iterar sobre varios repasos del código usando lo que se conoce como refactorización. Las modernos entornos de programación como Eclipse o Visual Studio incluso ya incorporan funciones automáticas que facilitan esta tarea.
  • 10.
  • 11.
  • 12.
  • 14. En los años 60 solo se podía definir el flujo de un programa a base de poner if's anidados y variables booleanas para decidir la lógica. Mas adelante ya se podían escribir funciones, de lo mas general a lo mas especifico y en la actualidad con la programación orientada objetos hay conceptos como la modularidad, abstracción, encapsulamiento, desacoplamiento, herencia hay herramientas y conceptos mas que suficientes como para evitar escribir este tipo de código.
  • 15.
  • 16. A finales de los años 1970 surgió una nueva forma de programar que no solamente daba lugar a programas fiables y eficientes, sino que además estaban escritos de manera que facilitaba su mejor comprensión, no sólo proveyendo ventajas durante la fase de desarrollo, sino también posibilitando una más sencilla modificación posterior. El teorema del programa estructurado, propuesto por Böhm- Jacopini, demuestra que todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes:
  • 18.
  • 20.
  • 21. • Iteración (bucle de instrucciones) con condición al principio.
  • 22.
  • 23. • Solamente con estas tres estructuras se pueden escribir todos los programas y aplicaciones posibles. Si bien los lenguajes de programación tienen un mayor repertorio de estructuras de control, éstas pueden ser construidas mediante las tres básicas citadas.
  • 24. El teorema del programa estructurado: proporciona la base teórica de la programación estructurada. Señala que tres maneras de combinar programas son suficientes para expresar cualquier función computable: secuencia, selección, e iteración. Esta observación no se originó con el movimiento de la programación estructurada; Estas estructuras son suficientes para describir el ciclo de instrucción de una unidad central de procesamiento, así como el funcionamiento de una máquina de Turing(sirve para explicar las funciones de un CPU, la lógica de cualquier algoritmo de computador). 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 de 1966 por Böhm y Jacopini, posiblemente porque Dijkstra había citado este escrito. El teorema del programa estructurado no responde a cómo escribir y analizar un programa estructurado de manera útil. Estos temas fueron abordados durante la década de 1960 y principio de los años 1970, con importantes contribuciones de Dijkstra, Robert W. Floyd, Tony Hoarey, y David Gries.
  • 25.
  • 26. Es posible hacer la programación estructurada en cualquier lenguaje de programación, aunque es preferible usar algo como un lenguaje de programación procedimental(los lenguajes de programación clásica se llaman también procedimentales, gracias a la capacidad de invocar la ejecución de procedimientos). Algunos de los lenguajes utilizados inicialmente para programación estructurada incluyen: ALGOL, Pascal, PL/I y Ada – pero la mayoría de los nuevos lenguajes programación procedimentales desde entonces han incluido características para fomentar la programación estructurada y a veces deliberadamente omiten características en un esfuerzo para hacer más difícil la programación no estructurada.
  • 27.
  • 28. Posterior a la programación estructurada se han creado nuevos paradigmas tales como la programación modular, la programación orientada a objetos, programación por capas, etc, y el desarrollo de entornos de programación que facilitan la programación de grandes aplicaciones y sistemas.