Download - Programación modular estructurada.ppt
![Page 1: Programación modular estructurada.ppt](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/1.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/2.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/3.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/4.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/5.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/6.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/7.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/8.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/9.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/10.jpg)
EJERCICIOS
10
![Page 11: Programación modular estructurada.ppt](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/11.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/12.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/13.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/14.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/15.jpg)
PARTES DE PROGRAMA
15
entrada proceso salida
![Page 16: Programación modular estructurada.ppt](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/16.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/17.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/18.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/19.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/20.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/21.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/22.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/23.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/24.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/25.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/26.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/27.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/28.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/29.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/30.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/31.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/32.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/33.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/34.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/35.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/36.jpg)
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](https://reader034.vdocumento.com/reader034/viewer/2022052622/5595c0891a28abba348b48a0/html5/thumbnails/37.jpg)
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