Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Programación estructurada
Esta metodología de programación :
• Permite utilizar sentencias de bifurcación condicional estandarizadas.
• Facilita leer la codificación del programa de inicio a fin en forma continua.
• No se acepta el uso de saltos incondicionales en el programa.
• Permite dividir el programa en subprogramas (módulos).
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
ENTRADA PROCESAMIENTO SALIDA
MEMORIA
El objetivo es transformar datos en información.
John Von Newman --> describir el concepto
de "programa almacenado".
La memoria se ve como un conjunto de celdas, las cuales almacenan números.
Estos números pueden representar dos cosas:
1. los datos, sobre los que va a trabajar el programa; o bien,
2. el programa en sí.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
La solución de cualquier problema puede darse en
varias formas o niveles de abstracción. Niklaus
Wirth expone que:
“Nuestra herramienta mental más importante para competir con la complejidad es la abstracción. Por tanto, un problema complejo no deberá considerarse inmediatamente en términos de instrucciones de un lenguaje, sino de elementos naturales del problema mismo, abstraídos de alguna manera”.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Características deseables de un
programa
Integridad
Claridad
Sencillez
Eficiencia
Modularidad
Generalidad
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Características deseables
Integridad. Se refiere a la corrección de los cálculos.
1+1=1 correcto
1+1=2 incorrecto
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Características deseables
Claridad. Se refiere a la facilidad de lectura del programa en conjunto, con particular énfasis, en la lógica subyacente.
• Esta claridad permite que otro programador o él que escribe el programa sigan la lógica del programa sin mucho esfuerzo.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Características deseables
Sencillez. Al hacer un programa, es favorable tomar en cuenta que en ocasiones se puede llegar a sacrificar cierta cantidad de eficiencia computacional para no complicar la estructura del programa.
En ocasiones es mas sencillo hacer un programa pequeño sin módulos en lugar de hacer uno con módulos.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Características deseables
Eficiencia. Relacionada con la velocidad de ejecución y la buena utilización de la memoria.
• Dos programas pueden hacer lo mismo, pero uno puede ser mas eficaz que el otro.
Uno con poco código, y mejor manejo de memoria, y otro con mucho código pero con una sobrecarga en el uso de la memoria.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
programa
Características deseables
Modularidad. Los programas se pueden dividir un pequeñas subtareas.
• El diseño modular de los programas aumenta la corrección y claridad de éstos y facilita los posibles cambios futuros del programa.
modulo modulo modulo
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Características deseables
Generalidad. El objetivo es que un programa pueda ser usado para operar una mayor cantidad de veces, con datos diferentes, para que pueda servir a más de un usuario.
Leer ciertos datos en
lugar de establecerlos
como valores fijos.
num1 num2 + = resultado
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Las fases de un programa comprenden:
Diseño:
• se dan las especificaciones en lenguaje natural y se crea un primer modelo matemático apropiado. La solución en esta etapa es un algoritmo expresado de manera muy informal.
Implementación:
• El programador convierte el algoritmo en código, siguiendo alguna de las 3 metodologías o estilos de programación existentes: descendente, ascendente y ad hoc.
Pruebas:
• Estudio de casos con datos de prueba, para detectar problemas en la ejecución del programa.
Es un material que se estructura en base a un conjunto de datos que serán probados en el programa para detectar posibles errores.
• Esto no quiere decir que el diseño no tenga errores.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
Los pasos generales para realizar un
programa son: 1. Análisis y propuesta de solución al problema: aquí
se identifica el tipo de problema y el área a la que pertenece. Se piensa también en posibles soluciones, con sus tiempos establecidos.
2. Identificación de variables constantes y actores involucrados en el problema: son las tres cosas que nos pueden cambiar al problema o alterar su curso.
3. Planificación del programa: se elige el lenguaje de programación a trabajar dependiendo de la solución y se crea el plan de trabajo el cual contiene la búsqueda bibliografía del problema y el cronograma de cada una de las etapas de los que consta la solución al problema.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
…pasos generales para realizar un programa
4. Algoritmo: desarrollo de la secuencia lógica de pasos para la solución del problema
5. Diagramas de Flujo: seguir los pasos del algoritmo verificando que el problema se resuelva correctamente.
6. Desarrollo de las especificaciones: cuando se elige el lenguaje de programación, existen variables, constantes y actores que hay que declarar antes de comenzar el programa, o si se va a utilizar ecuaciones matemáticas o funciones, las cuales requieren de cierta manera de escribirse dentro del programa. Estas especificaciones involucran algunas características del problema y ciertas características del lenguaje seleccionado.
Elementos básicos de programación
M. C. Bertha López Azamar Programación Estructurada
…pasos generales para realizar un programa
7. Codificación y Depuración (se requiere conocer la sintaxis del lenguaje): conversión del algoritmo en un programa, escribiéndolo en un lenguaje de programación lo más eficientemente posible.
8. Ejecución y verificación de errores: introducir el programa en la memoria, ejecutarlo y probar sus resultados, corrigiendo los errores hasta su punto final de tal forma que se obtenga la solución a su problema.
9. Prueba Final: Se tiene la plena seguridad de que el problema quedo resuelto ya que se agotaron todas las pruebas posibles de que el programa no falle al introducir ciertos valores o rangos de valores.
10. Documentación: mantenimiento y creación de los documentos descriptivos como el manual del programador y manual del usuario.