You are on page 1of 2

Curso: Programación 2

Clase: Fundamentos de Programación

1. Fases de resolución de problemas


2. Programación Estructurada
3. Diagramas de flujo
4. Pseudocódigo

Fases de resolución de problemas

 Análisis del problema (¿Qué I/O se desea?, ¿Qué método da el resultado esperado?)
 Diseño del algoritmo (PseudoCod “preciso”, “definido”, “finito”)
 Codificación (implementación)
 Testing (ejecución, validación, depuración)
 Mantenimiento
 Documentación

Ejemplo Planteado: Horas extra de un trabajador (valor_hora, nro horas)

Programación Estructurada

 Permite desarrollar de forma simple una secuencia lógica de acciones (o descendente), no


emplea saltos a otros puntos del algoritmo, y así aumenta la productividad.
 Estructuras de Control: Secuencial, Selectivas, Repetitivas, Anidadas
 EC Secuencial: Compuesta por acciones, creación de variables, asignaciones, cálculos simples
 EC Selectiva: Simples (Si - Entonces), Dobles (Si - Entonces, Si_no), Multiples (Según sea)
 EC Repetitiva: Mientras, Repetir – Hasta, Para – Hasta, PorCada – En
 EC Anidadas: Permite incluir cualquier EC dentro de otra EC, de forma ilimitada

Diagramas de Flujo

 Formas: Inicio/Final (ovalo), Entrada/Salida (Rectángulo Inclinado), Decisión (Rombo),


Proceso/Actividad (Rectángulo), Secuencia (Flechas), Asignación ()

Pseudocódigo

 Herramienta donde las instrucciones se asemejan al idioma nativo y facilitan la lectura del
programa. Las palabras clave son: Pedir/Leer, Imprimir/Mostrar,
 Estructuras de Control: Si – Entonces, Si_no, Según_Sea, Fin_Segun, Mientras, Repetir –
Hasta, Para – Hasta, PorCada – En, todas deben cerrar con Fin_<ec>

Ejercicios

1. Contar todos los CEROS en sec: 1,4,2,0,8,0,2,0,1,2


2. Verificar si A, B y C son números iguales
3. Obtener el promedio de 5 notas
Curso: Programación 2 - Lectura

Ciclo de Vida del Software - Fase1 - Análisis

La primera etapa en la producción de un sistema de software es decidir exactamente qué se supone


ha de hacer el sistema. Esta etapa se conoce también como análisis de requisitos o especificaciones
y por esta circunstancia muchos tratadistas suelen subdividir la etapa en otras dos:

 Análisis y definición del problema


 Especificación de requisitos

La parte más difícil en la tarea de crear un sistema de software es definir cuál es el problema, y a
continuación especificar lo que se necesita para resolverlo. Normalmente la definición del problema
comienza analizando los requisitos del usuario, pero estos requisitos, con frecuencia, suelen ser
imprecisos y difíciles de describir. Se deben especificar todos los aspectos del problema, pero con
frecuencia las personas que describen el problema no son programadores y eso hace imprecisa la
definición. La fase de especificación requiere normalmente la comunicación entre los
programadores y los futuros usuarios del sistema e iterar la especificación, hasta que tanto el
especificador como los usuarios estén satisfechos de las especificaciones y hayan resuelto el
problema normalmente.

En la etapa de especificaciones puede ser muy útil para mejorar la comunicación entre las diferentes
partes implicadas construir un prototipo o modelo sencillo del sistema final; es decir, escribir un
programa prototipo que simule el comportamiento de las partes del producto software deseado. Por
ejemplo, un programa sencillo -incluso ineficiente- puede demostrar al usuario la interfaz propuesta
por el analista. Es mejor descubrir cualquier dificultad o cambiar su idea original ahora que después
de que la programación se encuentre en estado avanzado o, incluso, terminada. El modelado de
datos es una herramienta muy importante en la etapa de definición del problema. Esta herramienta
es muy utilizada en el diseño y construcción de bases de datos.

Tenga presente que el usuario final, normalmente, no conoce exactamente lo que desea que haga el
sistema. Por consiguiente, el analista de software o programador, en su caso, debe interactuar con el
usuario para encontrar lo que el usuario deseará que haga el sistema. En esta etapa se debe
responder a preguntas tales como:

¿Cuáles son los datos de entrada? ¿Qué hipótesis son posibles?


¿Qué datos son válidos y qué datos no son ¿Existen casos especiales?
válidos? ¿Cuál es el formato de la salida?
¿Quién utilizará el sistema: especialistas ¿Qué documentación es necesaria?
cualificados o usuarios cualesquiera (sin ¿Cómo debe ser de rápido el sistema?
formación)? ¿Cada cuánto tiempo ha de cambiarse el
¿Qué interfaces de usuario se utilizarán? sistema después que se haya entregado?
¿Cuáles son los mensajes de error y de ¿Cómo debe actuar el sistema cuando se
detección de errores deseables? cometan errores?

El resultado final de la fase de análisis es una especificación de los requisitos del software.

Programación en C, Metodología, algoritmos y estructuras de datos (Luis Joyanes Aguilar)

You might also like