aspectos sobre el análisis y diseño en el desarrollo de programas algoritmos y desarrollo de...

25
Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Upload: baldomero-gerena

Post on 22-Jan-2016

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas

Algoritmos y Desarrollo de Programas I

Page 2: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

2

Objetivos

Cuando finalice esta lección, el estudiante: Conocerá sobre las herramientas de

análisis y diseño más importantes y útiles. Conocerá sobre las estructuras de control

más importantes. Podrá analizar y generar el diseño básico

de problemas simples con la estructura de control secuencial.

Conocerá sobre los tipos de errores en programación y su depuración

Page 3: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

3

Herramientas de Análisis – Análisis de Input-Process-Output

Propósito Identificar primero cual es el resultado

deseado (Output) Identificar que datos necesito para lograr

ese resultado (Input) Analizar como logro convertir esos datos

en la información deseada (Process)

Page 4: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Análisis – IPO Chart (Input-Process-Output)

4

Page 5: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Análisis – PAC (Problem Analysis Chart)

5

GIVEN DATA OUTPUT

Variables:nombreEmpleado

seguroSocial

horasTrabajadas

salarioPorHora

Constantes:DESCUENTO_INCOME_TAX = .058

SEGURO_SOCIAL = .063

DISPLAY “El nombre del empleado es:” + nombreEmpleado

DISPLAY “El Salario Bruto es: “ + salarioBruto

DISPLAY “El total de deducciones es: “ + totalDeducciones

DISPLAY “El salario neto es: “ + SalarioNeto

FORMULAS STEPS

salarioBruto = horasTrabajadas * salarioPorHora

deducIncomeTax = salarioBruto * DESCUENTO_INCOME_TAX

deducSeguroSocial = salarioBruto * DESCUENTO_SEGURO_SOCIAL

totalDeducciones = deducIncomeTax + deducSeguroSocial

salarioNeto = salarioBruto - totalDeducciones

1. Pedir Datos al usuario

2. Calcular Sueldo Bruto

3. Calcular deducción Seguro Social

4. Calcular deducción Income Tax

5. Sumar el total de deducciones

6. Calcular el sueldo neto al restarle las deducciones al sueldo bruto

7. Mostrar en pantalla los datos

8. StopOprimir Al Empezar Problema

1

Page 6: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño –Diseño de la solución

Propósito Identificar tareas principales Descomponer las tareas hasta llevarlas

a las más simples Organizar las tareas Identificar los datos (Proceso

simultáneo) Diseñar la secuencia que se seguirá en

la solución de cada tarea

6

Page 7: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Identificación y manejo de tareas

Diagrama de Estructura

7

Page 8: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Identificación de los datos

Diccionario de Datos

El identificar los datos es un proceso que se da a la par con el de Identificar y manejar las tareas

8

NUM NOMBRE VARIABLE DESCRIPCION DATA TYPE

1 nombre Nombre del empleado String

2 seguroSocial Identificación única del empleado String

3horasTrabajadas Cantidad de horas trabajadas en una

semanareal (double)

4 salarioHora Pago básico por hora regular de trabajo real (double)

5 salarioBruto Salario calculado sin restar deducciones real (double)

6 totalDeducciones Total de todas las deducciones aplicables real (double)

7salarioNeto Salario a ser pagado tras restar las

deduccionesreal (double)

Page 9: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Integración de datos con tareas

9

Diagrama de Estructura con Datos

Oprimir Al Empezar Problema

1

Page 10: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Diseño de la secuencia para cada tarea

Flujograma

10

Page 11: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Diseño de la secuencia para cada tarea

Pseudocódigo

Module MostrarResultados(In nEmp : String, salarioB, totDeducs, salarioN : real)

 

Start

DisplayLine “Datos procesados para el Empleado”

DisplayLine

DisplayLine “Nombre: “ + nEmp

DisplayLine “Salario bruto: “ + salarioB

DisplayLine “Total Deducs: “ + totDeducs

DisplayLine “Salario Neto: “ + salarioN

 

Return (MostrarResultados)

11

Page 12: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Desde el Flujograma o el Pseudocódigo

12

Pseudocódigo

Module MostrarResultados(In nEmp : String, salarioB, totDeducs, salarioN : real)

 Start

DisplayLine “Datos procesados para el Empleado”

DisplayLineDisplayLine “Nombre: “ + nEmpDisplayLine “Salario bruto: “ + salarioBDisplayLine “Total Deducs: “ + totDeducsDisplayLine “Salario Neto: “ + salarioN

 Return (MostrarResultados)

Page 13: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño –Al Programa…

13

Java…

public static void mostrarResultados(String nEmp, double salarioB, double totDeducs, double salarioN) {

System.out.println( “Datos procesados para el Empleado”);System.out.println();System.out.println(“Nombre: “ + nEmp);System.out.println(“Salario bruto: “ + salarioB);System.out.println(“Total Deducs: “ + totDeducs);System.out.println(“Salario Neto: “ + salarioN);

 }

Page 14: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Diseño de la secuencia para cada tarea

Símbolosprincipalesutilizados enun flujograma

14

Page 15: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Estructuras de Control

Hay tres estructuras principales de control que son esenciales en el diseño de todo programa.

Estas son: Estructura de secuencia Estructura de selección Estructura de repetición

15

Page 16: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Estructuras de Control

Secuencia

16

Page 17: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Estructuras de Control

Selección

17

Page 18: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Estructuras de Control

Selección – Otro caso

18

Page 19: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Herramientas de Diseño – Estructuras de Control

Repetición

19Do-While Control Structure Do-Until Control Structure

Page 20: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Comencemos con…

Estructura de Secuencia

- Problemas Simples

20

Page 21: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Desarrollo de problema simple

Se requiere un programa que produzca el resultado de la suma de los valores 52365 y 1278952.

PAC o IPO Chart Structure Chart Flujograma Pseudocódigo Programa

21

PACData

Dictionary

Page 22: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Desarrollo de otro problema simple

Se requiere un programa que produzca como resultado el área y el perímetro de una casa que mide 35 pies por 48 pies.

PAC o IPO Chart Structure Chart Flujograma Pseudocódigo Programa

22

area = largo x anchoperimetro = suma de todos los lados

PACData

Dictionary

Page 23: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

Problema más complejo

Se requiere un programa que genere el área de 5 círculos cuyos radios serán provistos por el usuario.

PAC o IPO Chart Structure Chart Flujograma Pseudocódigo Programa

23

area círculo

pi = 3.14159 aprox.

2rPACData

Dictionary

Page 24: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

24

Errores en programación y depuración de programas

En programación de computadoras existen tres tipos de errores: Error de sintaxis Error de lógica Error en tiempo de ejecución

El error de sintaxis ocurre cuando no se cumple con alguna regla de sintaxis. Ejemplo: Olvidar colocar el punto y coma al

final de un enunciado. Los errores de sintaxis son detectados por

el compilador.

Page 25: Aspectos sobre el Análisis y Diseño en el Desarrollo de Programas Algoritmos y Desarrollo de Programas I

25

Errores en programación y depuración de programas (cont.)

El error de lógica causa que el programa trabaje incorrectamente. Ejemplo: Sumar en lugar de multiplicar en una

fórmula El error de tiempo de ejecución causa

que el programa termine de ejecutar abruptamente. Ejemplo: Tratar de dividir por cero Ejemplo: Entrar una palabra cuando se pide un

número Los errores de lógica y de tiempo de

ejecución son detectados usando un depurador.