programación modular estructurada.ppt

37
CONCEPTOS BÁSICOS DE LA PROGRAMACIÓN Programación Modular Programación Estructurada Tutora: Leydi J. Hernández

Upload: leydi-hernandez

Post on 03-Jul-2015

3.829 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Programación modular estructurada.ppt

CONCEPTOS BÁSICOS DE LA PROGRAMACIÓN

•Programación Modular

•Programación Estructurada

Tutora: Leydi J. Hernández

Page 2: Programación modular estructurada.ppt

INTRODUCCIÓN

El desarrollo de software está tomando gran

importancia en el mundo informático

La asignatura busca estudiar los fundamentos de

la programación

Metodología de la programación = metodología

necesaria para resolver problemas mediante

programas de computadora.

2

Page 3: Programación modular estructurada.ppt

OBJETIVO GENERAL

Desarrollar la capacidad de comprender y abstraer problemas de programación identificando sus partes y diseñando soluciones.

3

Page 4: Programación modular estructurada.ppt

CONCEPTOS GENERALES

Hardware: Corresponde a la parte física de un computador.

Software: El software son todos aquellos programas que permiten la comunicación entre el usuario y el computador.

Dispositivos de entrada y salida: son aquellos elementos de hardware que nos permiten el ingreso de datos y presentarlos al usuarios a través

4

Page 5: Programación modular estructurada.ppt

METODOLOGÍA

Programación Modular

Flexible y potente

El programa se divide en Módulos

Programación Estructurada

El programa tiene un diseño modular

Los módulos son diseñados en forma descendente

Cada modulo se codifica en base a: secuencias, selección y repetición.

5

Page 6: Programación modular estructurada.ppt

CONCEPTOSAlgoritmo

Método para resolver un problema, conjunto de reglas para ejecutar determinada tarea.Diagramas de flujo

Un diagrama de flujo es una representación gráfica de la secuencia de pasos a realizar para producir un cierto resultado.Seudo-código

Lenguaje de especificación de algoritmos.

6

Page 7: Programación modular estructurada.ppt

PASOS PARA LA SOLUCIÓN DE PROBLEMAS

Definición del problema (Entender que es lo que se requiere)

Determinación de los datos de entrada y salida

Modelo Matemático (Para conocer el proceso de solución)

Algoritmo

Prueba

Refinamiento del algoritmo

Codificación7

Page 8: Programación modular estructurada.ppt

PASOS PARA LA SOLUCIÓN DE PROBLEMAS

Sumar dos números

EL PASO 1 (entender):

Ingresar dos números realizar la sumatoria y presentarlos

EL PASO 2 (datos de entrada y salida):

Entrada: numero1 y numero 2

Salida: resultado

EL PASO 3 (modelo matemático a utilizar):

Permite resolver analíticamente el problema, en el ejemplo de las sumas tendríamos:

Datos de entrada 10 y 30 (primer termino y segundo termino)

Proceso para sumar 10 + 30 (suma de los términos)

Información de salida 40 (resultado del proceso)

Resultado = numero1 + numero28

Page 9: Programación modular estructurada.ppt

PASOS PARA LA SOLUCIÓN DE PROBLEMAS

EL PASO 4 (algoritmo primera versión): 1. Inicio2. Ingresar el primer valor a sumar (numero1)3. Ingresar el segundo valor a sumar (numero2)4. Realizar la sumatoria (Resultado = numero1 +

numero2)5. Presentar el resultado de la suma (resultado)6. Fin

EL PASO 5 (prueba): Prueba de escritorio

EL PASO 6: Consiste en refinamiento del algoritmo.

EL PASO 7: Equivale a escribir (traducir) el algoritmo en lenguaje de alto nivel . 9

Page 10: Programación modular estructurada.ppt

EJERCICIOS

10

Page 11: Programación modular estructurada.ppt

DETERMINAR EL ÁREA DE UN TRIÁNGULO

SI SE CONOCE LA BASE Y ALTURA

11

•EL PASO 1 (entender):

•EL PASO 2 (datos de entrada y

salida):

Entrada: base y altura

Salida: area

•EL PASO 3 (modelo matemático

a utilizar):

Area = base * altura / 2

•EL PASO 4 (algoritmo):

1. Inicio

2. ingresar base

3. ingresar altura

4. Realizar el Cálculo el Área = (base * altura ) / 2

5. mostrar área

6. Fin

•EL PASO 5 (prueba):

– Prueba de escritorio

•EL PASO 6:

– corrección del algoritmo

Page 12: Programación modular estructurada.ppt

DETERMINAR EL VALOR A PAGAR

CONOCIENDO EL NÚMERO DE HORAS Y EL

COSTO POR HORA

12

•EL PASO 1 (entender):

•EL PASO 2 (datos de entrada y

salida):

Entrada: Numero de horas y costo

Salida: sueldo a pagar

•EL PASO 3 (modelo matemático

a utilizar):

sueldo = NumerodeHora *

Costodehora

•EL PASO 4 (algoritmo):

1. Inicio

2. solicitar numhora

3. solicitar coshora

4. Realizar el calculo sueldo = numhora * coshora

5. mostrar sueldo

6. Fin

•EL PASO 5 (prueba):

– Prueba de escritorio

•EL PASO 6:

– corrección del algoritmo

Page 13: Programación modular estructurada.ppt

PROGRAMA

• Introducirnos al proceso de la programación que se manifiesta esencialmente en los programas.

• Un programa de computadora es un conjunto finito de instrucciones que producirán la ejecución de una determinada tarea. Un programa es un medio para llegar a un fin. Proceso para solucionar un problema.

• Diseñar algoritmos (pseudo-codigo) para resolver problemas, y su posterior conversión en programas

13

Fundamentos de programación

Page 14: Programación modular estructurada.ppt

PARTES DE PROGRAMA

El programador debe establecer el conjunto de especificaciones que debe contener el programa:

Entrada, salida y algoritmos de resolución

Se debe establecer de donde provienen las entradas (dispositivos de entrada teclado, disco.)

Las salidas de datos donde se van a presentar.

14

Page 15: Programación modular estructurada.ppt

PARTES DE PROGRAMA

15

entrada proceso salida

Page 16: Programación modular estructurada.ppt

INSTRUCCIONES

instrucciones de inicio/fin Inicio

fin

instrucciones de asignación Variable valor

instrucciones de lectura Leer variable

instrucciones de escritura Presentar variable

Presentar mensaje16

Page 17: Programación modular estructurada.ppt

ELEMENTOS DE UN PROGRAMA

Palabras reservadas (inicio, fin, si, entonces... etc.)

Identificadores (nombres de variables)

Constantes

Variables

Expresiones

instrucciones

17

Page 18: Programación modular estructurada.ppt

ELEMENTOS DE UN PROGRAMA

Dato:

- "hecho o valor a partir del cual se puede inferir una conclusión información".

- Los datos son aquello que un programa manipula.

- Sin datos un programa no funcionaría correctamente.

18

Page 19: Programación modular estructurada.ppt

TIPOS DE DATOS

Los tipos de datos simples los podemos definircomo numéricos, lógicos y carácter, etc..

Enteros

Números enteros desde un valor negativo altohasta otro valor positivo alto.

Carácter

Almacenan información alfa-numérica

Lógicos (booleanos) - Verdadero y Falso

Como indica el encabezado, este tipo presentasólo dos valores: verdadero o falso.

19

Page 20: Programación modular estructurada.ppt

ELEMENTOS DE UN PROGRAMA

Variables

Los datos son almacenados en la memoria de la computadora. Una variable es una referencia a un área específica de la memoria de la computadora donde se guardan los datos.

Constantes

Una constante es un objeto de datos con un nombre, un tipo y un valor asociado que no puede modificarse una vez definido.

20

Page 21: Programación modular estructurada.ppt

ELEMENTOS DE UN PROGRAMA

OperadoresUn operador es un símbolo formado por uno o más caracteres que permite realizar una determinada operación entre uno o más datos y produce un resultado.(+,-,*,/,>,<, !=, <>, Mod, %)ExpresionesLas expresiones son combinación de constantes, variables, símbolos de operación, paréntesis y nombres de funciones Una expresión consta de operandos y operadores, según sea el tipo de objetos que manipulan las expresiones puede serde tipo: aritméticas, lógicas, relacionales y carácter 21

Page 22: Programación modular estructurada.ppt

EXPRESIONES Aritméticas

5 + 3

5 * 4 + 6 (5 * 4)+6

Lógicas

(A > B) (verdadero)

relacionales

> , <, =

22

Page 23: Programación modular estructurada.ppt

ENTRADA Y SALIDA DE INFORMACIÓN

Las operación de entrada permiten leerdeterminados valores y asignarlos a variablesdeterminadas.

se la conoce como lectura (leer, read), losdispositivos pueden ser teclado, unidades dedisco, etc.

Luego de la transformación de los datos, laoperación de salida se denomina escritura(presentar,write)

se la puede hacer a pantalla, impresora, etc23

Page 24: Programación modular estructurada.ppt

ELEMENTOS DE UN PROGRAMA

Algoritmo areatriangulo

Inicio

Leer altura

Leer base

Area = (base * altura ) / 2

Presentar area

fin

24

Page 25: Programación modular estructurada.ppt

EJERCICIOS

// algoritmo para calcular el area de un circulo

Algoritmo areacirculo

Inicio

constante pi = 3.1416

leer radio

area = (2 * pi * radio)

presentar area

fin

25

Page 26: Programación modular estructurada.ppt

ESTRUCTURAS SELECTIVAS

Estructura Secuencial

La estructura secuencial es aquella en la que una instrucción sigue a otra en secuencia. Suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente.

26

Page 27: Programación modular estructurada.ppt

EJEMPLO//permite calcular el perímetro de un cuadrilátero

Algoritmo perimetrorectangulo

inicio

Leer lado

Leer ancho

Perímetro = (lado*2)+(ancho*2)

Presentar perímetro

fin

27

Page 28: Programación modular estructurada.ppt

ESTRUCTURAS SELECTIVAS

Estructuras de selección

permiten la decisión entre acciones alternativas,

llevar a cabo una acción en base a una condición (lógica).

Pueden ser simples o múltiples

Se pueden utilizar de manera anidada de forma indefinida.

28

Page 29: Programación modular estructurada.ppt

ESTRUCTURAS SELECTIVAS

Si (condición) (lógica verdadero)

…. instrucciones

finsi

Si (condición) (lógica verdadero)

… instrucciones

Sino (caso contrario falso)

… instrucciones

Finsi

29

Page 30: Programación modular estructurada.ppt

EJEMPLO

Algoritmo numeropar

Inicio

entero numero

Leer numero

Si residuo(numero/2) = 0

presentar “numero par

Finsi

fin

30

Algoritmo numeroparimpar

Inicio

entero numero

Leer numero

Si residuo(numero/2)=0

presentar “numero par”

Sino

presentar “numero impar”

Finsi

fin

Page 31: Programación modular estructurada.ppt

ESTRUCTURAS REPETITIVAS

repetición de un número determinado de sentencias en base a una condición lógica.

Se conoce también como bucle.

Es importante tener en cuenta:

cuantas veces se repite el bucle o ciclo,

cuál es el cuerpo del mismo.

El cuerpo del bucle lo constituyen:

una serie de sentencias, que pueden ser de cualquier tipo,

las que serán repetidas de acuerdo a lo que indique la condición de finalización del bucle.

31

Page 32: Programación modular estructurada.ppt

ESTRUCTURAS REPETITIVAS ANIDADAS

todos aquellos bucles que estén contenidosdentro de otro bucle.

Cuando se anidan bucles, se debe tener cuidadoque el bucle inferior este contenidocompletamente dentro del bucle exterior.

Todos los tipos de bucles pueden anidarse, seaentre si o entre cada uno.

32

Page 33: Programación modular estructurada.ppt

Mientras (condición) hacer

….. instrucciones

Fin_mientras

Desde num 20 hasta 30 hacer

…. instrucciones

Fin_desde

Hacer

…. instrucciones

Mientras (condición)

Repetir

Hasta_que (condición)

33

variable

inicio Fin – incluye limite

Page 34: Programación modular estructurada.ppt

EJEMPLO

// realizar la tabla de multiplicar

Algoritmo tablademultiplicar

Inicio

entero n

leer ndesde c 1 hasta n hacer

presentar n, “ + ”,c, “ = ”, n +c

findesde

fin

34

Si n = 5 presentaría

5 + 1 = 6

5 + 2 = 7

5 + 3 = 8

5 + 4 = 9

5 + 5 = 10

Page 35: Programación modular estructurada.ppt

EJEMPLO

//realiza la tabla de multiplicar

Algoritmo tablademultiplicarInicio

entero c, n

c 1

Leer n

Mientras (c <= n) hacer

presentar n, “ + ”,c, “ = ”, n +c

c = c +1

Finmientras

Fin35

Si n = 5 presentaría

5 + 1 = 6

5 + 2 = 7

5 + 3 = 8

5 + 4 = 9

5 + 5 = 10

Page 36: Programación modular estructurada.ppt

36

// algoritmo para calcular el factorial de un numero

Algoritmo factorial

Inicio

entero f, numero

leer numero

f 1

desde (i 1 hasta numero) hacer

f f * i

findesde

presentar “el factorial de”, numero,”es”,f

fin

Page 37: Programación modular estructurada.ppt

37

// algoritmo para determinar si un numero es primo o no

Algoritmo numeroprimo

Inicio

entero d, numero, lim

logica p

leer numero

d 2

lim num / 2

p verdadero

mientras (d < num)

si residuo(num/d) = 0

p falso

d lim

finsi

d d + 1

finmientras

si (p)

presentar “numero es primo”

sino

presentar “numero no es primo”

finsi

fin