SlideShare una empresa de Scribd logo
1 de 8
PROGRAMACIÓN ESTRUCTURADA
CONTENIDOS
 Algoritmos
 Técnicas de programación
 Tipos de sentencias
Silvia Pilar Rodríguez
Septiembre 2013
ALGORITMOS
Conjunto de instrucciones
Principio y fin bien definidos
Sin ambigüedades
ENTRADA PROCESO SALIDA
Fuente:
www.flickr.com/photos/toniblay/52445415
HISTORIA DE LA PROGRAMACIÓN
1950 1960 1970 1980 1990
Lenguajes de máquina
•Pocos recursos
•Código extenso
•Binario, Assembler
Programación Secuencial
•Fácil escritura
•Dificultad del GO TO
•Fortran, Basic
Programación lógica
•Declarativo
•Inteligencia artificial
•Muy específico
•Prolog, Lisp
Programación estructurada
•Fácil escritura
•Claro y preciso
•Modular
•Pascal, C
Programación
orientada a objetos
•Muy modular
•Reutilizable
•Muchos recursos
(entornos gráficos)
•C++, Java
PROGRAMACIÓN ESTRUCTURADA
Fuente:
http://blog.iese.edu/empresafam
iliar/files/2013/04/para-que.jpg
¿POR QUÉ ESTE ESTILO DE
PROGRAMACIÓN?
Fácil de aprender
Ayuda a estructurar el razonamiento
Todavía vigente
Base de la programación actual
PASCAL: creado por Nicolás Wirth
con fines didácticos
TIPOS DE SENTENCIAS
SENTENCIAS SECUENCIALES
F
C
A
RESULT
RESULT  A * 2
Inicio de algoritmo
Fin de algoritmo
Ingreso de datos
Salida de datos
Operación o Proceso
TIPOS DE SENTENCIAS
SENTENCIAS SELECTIVAS
Condición
Acción por
verdadero
Acción por
falso
V F
Variable de decisión
Acción 1
Valor 1 Valor 2 Valor 3 Valor n
Acción 2 Acción 3 Acción n
…
…
DOBLE MÚLTIPLE
•Sólo dos caminos posibles
•Sobre condición lógica
•Varios caminos posibles
•Sobre el valor de una variable entera
TIPOS DE SENTENCIAS
SENTENCIAS ITERATIVAS
DETERMINADA INDETERMINADA
•El programador conoce la
cantidad de iteraciones
•El usuario decide cuántas
iteraciones
# iteraciones
Acciones a
repetir
Acciones a
repetir
Condición para ingresar
Acciones a
repetir
Condición para salir
PROGRAMACIÓN ESTRUCTURADA
TEOREMA DE DIJKSTRA
Toda función computable puede
ser implementada en un
lenguaje de programación que
combine sólo estas tres
estructuras lógicas Fuente: Björn Larsson, www.bjornlarsson.se

Más contenido relacionado

Destacado (20)

Visual basic-60-navarra(1)
Visual basic-60-navarra(1)Visual basic-60-navarra(1)
Visual basic-60-navarra(1)
 
Guia 0 vb induccion
Guia 0 vb    induccionGuia 0 vb    induccion
Guia 0 vb induccion
 
Folleto de visual basic
Folleto de visual basicFolleto de visual basic
Folleto de visual basic
 
Visual basic
Visual basicVisual basic
Visual basic
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Algoritmos y Lenguaje de Programación - Ejercicios de: case
Algoritmos y Lenguaje de Programación - Ejercicios de: caseAlgoritmos y Lenguaje de Programación - Ejercicios de: case
Algoritmos y Lenguaje de Programación - Ejercicios de: case
 
Novedades visual studio 2015
Novedades visual studio 2015Novedades visual studio 2015
Novedades visual studio 2015
 
Cap7 2
Cap7 2Cap7 2
Cap7 2
 
Visual basic, iliana, anais y mafer
Visual basic, iliana, anais y maferVisual basic, iliana, anais y mafer
Visual basic, iliana, anais y mafer
 
Laboratorio nº 1
Laboratorio nº 1Laboratorio nº 1
Laboratorio nº 1
 
Presentac..
Presentac..Presentac..
Presentac..
 
Jairo y maria ruiz
Jairo y maria ruizJairo y maria ruiz
Jairo y maria ruiz
 
Menu de programas
Menu de programasMenu de programas
Menu de programas
 
Guia lab2
Guia lab2Guia lab2
Guia lab2
 
Guia Aprendizaje Visual basic
Guia Aprendizaje  Visual basicGuia Aprendizaje  Visual basic
Guia Aprendizaje Visual basic
 
Pseint pseudocodigo
Pseint   pseudocodigoPseint   pseudocodigo
Pseint pseudocodigo
 
Conociendo Visual Basic
Conociendo Visual BasicConociendo Visual Basic
Conociendo Visual Basic
 
Guia laboratorio Nº 1 vb.net
Guia laboratorio Nº 1 vb.netGuia laboratorio Nº 1 vb.net
Guia laboratorio Nº 1 vb.net
 
Evangelii gaudium: la alegría del Evangelio
Evangelii gaudium: la alegría del EvangelioEvangelii gaudium: la alegría del Evangelio
Evangelii gaudium: la alegría del Evangelio
 
'Evangelii Gaudium' en comentarios
'Evangelii Gaudium' en comentarios'Evangelii Gaudium' en comentarios
'Evangelii Gaudium' en comentarios
 

Similar a Introducción a la programación

Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: PascalCarola511
 
Estructura de la programacion orientada a objetos
Estructura de la programacion orientada a objetosEstructura de la programacion orientada a objetos
Estructura de la programacion orientada a objetosAmado Arcaya
 
Taller de Alfabetización Tecnológica. Multimedia Educativo
Taller de Alfabetización Tecnológica. Multimedia EducativoTaller de Alfabetización Tecnológica. Multimedia Educativo
Taller de Alfabetización Tecnológica. Multimedia EducativoSilvana Cecone Gonzalez
 
Java script para desarrolladores SharePoint
Java script para desarrolladores SharePointJava script para desarrolladores SharePoint
Java script para desarrolladores SharePointAdrian Diaz Cervera
 
Plataformas Virtuales
Plataformas VirtualesPlataformas Virtuales
Plataformas VirtualesGaBy Martinez
 
SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...
SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...
SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...Adrian Diaz Cervera
 
UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08
UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08
UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08Ramiro Nahuel Pol
 
Tecnologia escuela mateo hernandez
Tecnologia escuela mateo hernandezTecnologia escuela mateo hernandez
Tecnologia escuela mateo hernandezleeborges
 
Lenguajes de programación i
Lenguajes de programación   iLenguajes de programación   i
Lenguajes de programación iOmar Robles
 
Plataformas de e learning
Plataformas de e learningPlataformas de e learning
Plataformas de e learningAdrian Eleazar
 
Fundamentos de Java
Fundamentos de Java Fundamentos de Java
Fundamentos de Java jmosorio777
 
Why Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoWhy Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoBig Data Spain
 
Lenguaje de programacion2
Lenguaje de programacion2Lenguaje de programacion2
Lenguaje de programacion2Juliana Garzon
 
Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientesalexis ibarra
 
Sesión 1: Python
Sesión 1: PythonSesión 1: Python
Sesión 1: Pythonmaluacsa
 

Similar a Introducción a la programación (20)

Lenguaje de programación: Pascal
Lenguaje de programación: PascalLenguaje de programación: Pascal
Lenguaje de programación: Pascal
 
Control+F
Control+FControl+F
Control+F
 
Estructura de la programacion orientada a objetos
Estructura de la programacion orientada a objetosEstructura de la programacion orientada a objetos
Estructura de la programacion orientada a objetos
 
Taller de Alfabetización Tecnológica. Multimedia Educativo
Taller de Alfabetización Tecnológica. Multimedia EducativoTaller de Alfabetización Tecnológica. Multimedia Educativo
Taller de Alfabetización Tecnológica. Multimedia Educativo
 
Estudio de LMS
Estudio de LMSEstudio de LMS
Estudio de LMS
 
Java script para desarrolladores SharePoint
Java script para desarrolladores SharePointJava script para desarrolladores SharePoint
Java script para desarrolladores SharePoint
 
Plataformas Virtuales
Plataformas VirtualesPlataformas Virtuales
Plataformas Virtuales
 
SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...
SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...
SharePoint Saturday Barcelona. La importancia de JavaScript en nuestros desar...
 
UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08
UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08
UDESA 2010 - Educación y Tecnología - Ciencias de la Educación - Taller 08
 
Introducción a Ceylon
Introducción a CeylonIntroducción a Ceylon
Introducción a Ceylon
 
Tecnologia escuela mateo hernandez
Tecnologia escuela mateo hernandezTecnologia escuela mateo hernandez
Tecnologia escuela mateo hernandez
 
Lenguajes de programación i
Lenguajes de programación   iLenguajes de programación   i
Lenguajes de programación i
 
Diapositivas de la poo
Diapositivas de la pooDiapositivas de la poo
Diapositivas de la poo
 
Plataformas de e learning
Plataformas de e learningPlataformas de e learning
Plataformas de e learning
 
Fundamentos de Java
Fundamentos de Java Fundamentos de Java
Fundamentos de Java
 
Presentacion cw2012
Presentacion cw2012Presentacion cw2012
Presentacion cw2012
 
Why Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén CasadoWhy Apache Flink is better than Spark by Rubén Casado
Why Apache Flink is better than Spark by Rubén Casado
 
Lenguaje de programacion2
Lenguaje de programacion2Lenguaje de programacion2
Lenguaje de programacion2
 
Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientes
 
Sesión 1: Python
Sesión 1: PythonSesión 1: Python
Sesión 1: Python
 

Más de Silvia Pilar Rodríguez

Más de Silvia Pilar Rodríguez (7)

Sistema educativo y políticas educativas
Sistema educativo y políticas educativasSistema educativo y políticas educativas
Sistema educativo y políticas educativas
 
Para subir la actividad
Para subir la actividadPara subir la actividad
Para subir la actividad
 
¿Cómo trabajar en una Wiki colaborativa?
¿Cómo trabajar en una Wiki colaborativa?¿Cómo trabajar en una Wiki colaborativa?
¿Cómo trabajar en una Wiki colaborativa?
 
Cómo manejarse en un aula virtual
Cómo manejarse en un aula virtualCómo manejarse en un aula virtual
Cómo manejarse en un aula virtual
 
Propuesta ItaT
Propuesta ItaTPropuesta ItaT
Propuesta ItaT
 
Prototipo "Lo que aprendí puede enseñar"
Prototipo "Lo que aprendí puede enseñar"Prototipo "Lo que aprendí puede enseñar"
Prototipo "Lo que aprendí puede enseñar"
 
Analisis del proyecto
Analisis del proyectoAnalisis del proyecto
Analisis del proyecto
 

Introducción a la programación

  • 1. PROGRAMACIÓN ESTRUCTURADA CONTENIDOS  Algoritmos  Técnicas de programación  Tipos de sentencias Silvia Pilar Rodríguez Septiembre 2013
  • 2. ALGORITMOS Conjunto de instrucciones Principio y fin bien definidos Sin ambigüedades ENTRADA PROCESO SALIDA Fuente: www.flickr.com/photos/toniblay/52445415
  • 3. HISTORIA DE LA PROGRAMACIÓN 1950 1960 1970 1980 1990 Lenguajes de máquina •Pocos recursos •Código extenso •Binario, Assembler Programación Secuencial •Fácil escritura •Dificultad del GO TO •Fortran, Basic Programación lógica •Declarativo •Inteligencia artificial •Muy específico •Prolog, Lisp Programación estructurada •Fácil escritura •Claro y preciso •Modular •Pascal, C Programación orientada a objetos •Muy modular •Reutilizable •Muchos recursos (entornos gráficos) •C++, Java
  • 4. PROGRAMACIÓN ESTRUCTURADA Fuente: http://blog.iese.edu/empresafam iliar/files/2013/04/para-que.jpg ¿POR QUÉ ESTE ESTILO DE PROGRAMACIÓN? Fácil de aprender Ayuda a estructurar el razonamiento Todavía vigente Base de la programación actual PASCAL: creado por Nicolás Wirth con fines didácticos
  • 5. TIPOS DE SENTENCIAS SENTENCIAS SECUENCIALES F C A RESULT RESULT  A * 2 Inicio de algoritmo Fin de algoritmo Ingreso de datos Salida de datos Operación o Proceso
  • 6. TIPOS DE SENTENCIAS SENTENCIAS SELECTIVAS Condición Acción por verdadero Acción por falso V F Variable de decisión Acción 1 Valor 1 Valor 2 Valor 3 Valor n Acción 2 Acción 3 Acción n … … DOBLE MÚLTIPLE •Sólo dos caminos posibles •Sobre condición lógica •Varios caminos posibles •Sobre el valor de una variable entera
  • 7. TIPOS DE SENTENCIAS SENTENCIAS ITERATIVAS DETERMINADA INDETERMINADA •El programador conoce la cantidad de iteraciones •El usuario decide cuántas iteraciones # iteraciones Acciones a repetir Acciones a repetir Condición para ingresar Acciones a repetir Condición para salir
  • 8. PROGRAMACIÓN ESTRUCTURADA TEOREMA DE DIJKSTRA Toda función computable puede ser implementada en un lenguaje de programación que combine sólo estas tres estructuras lógicas Fuente: Björn Larsson, www.bjornlarsson.se