Documente Academic
Documente Profesional
Documente Cultură
Estructura de un programa
2
Programa de Aplicación
3
Pasos en la resolución de un problema
• Entender el problema
• Conceptualización
• Objetivo
• Contexto
• Buscar soluciones
• Elegir solución
• Diseñar solución
• Descomposición
• Especificar tareas
• Modelar solución
• Implementar solución
• Validar solución
4
¿Qué es un problema?
• Es una situación concreta sobre la cual se quiere implementar una
solución (ejemplos)
• Solución: procedimiento que nos lleva a satisfacer ciertos
requerimientos
• Esquema básico para la resolución de un problema a través de un
programa con un enfoque sistémico
Entrada Salida
Proceso
•Datos Externos •Informes
•Datos auto generados •Datos para otro
•Lectura de dispositivo programa
de almacenamiento •Datos grabados en
dispositivos externos de
almacenamiento
5
Datos y Variables
6
¿Qué es un Modelo?
• Estructura para dar razón y abstraer una realidad
• Ejemplo:
Inscrita Asignaturas
Estudiantes
Estudia
Plan de Estudios
Carrera
7
¿Qué es un algoritmo?
8
¿Cómo desarrollar un algoritmo?
• Imaginación
• No reinventar la rueda
• Dividir para conquistar
• Para ser efectivo se requiere practicar constantemente
• El diseño de algoritmos es una rama de la Ciencia de la
Computación
9
¿Cómo se describe un algoritmo?
• Lenguaje natural
• Pseudo código
• Lenguaje de programación
• La precisión es importante
• Un algoritmo no puede ser descrito de forma ambigua:
• Todos tienen que entender lo mismo (incluido el computador!)
10
Llamada telefónica
11
Árboles de decisión
• Herramienta útil
para describir
algoritmos que
involucran gran
cantidad de
decisiones
12
Conceptos Básicos de Algoritmos
• Conector ?
Diagrama de Flujo y Pseudo-Código
DIAGRAMA DE FLUJO NOMENCLATURA PSEUDO-CÓDIGO
Variables
Entero var1, x , y Definición de variables Entero var1, x, y
Real a, b Real a, b
Escribir
Impresión de mensajes
“Mensaje 1” Escribir (“Mensaje 1”)
Leer
var1,x, y Lectura de mensajes Leer (var1, x, y)
Transformación de datos
a=3*x+ y Operaciones sobre los datos a=3*x+ y
b = a / var1 b = a / var1
Si a > b Entonces
Inicio
F V Bifurcación en la ejecución de
Instrucciones
Si a > b instrucciones
Fin
Sino
Inicio
Instrucciones
Fin
Conector
Termino
Diagrama de Flujo
Edad
Ingrese su
edad
Edad
si
Usted es
Edad>=18 mayor de
edad
No
Usted es
menor de
edad
Fin
Algoritmos
• Del ejemplo anterior podemos observar que la bifurcación permite seguir el flujo
adecuado dada una condición.
• Las condiciones que se evalúan en las bifurcaciones son siempre verdaderas o
falsas.
• Por ende, hay que colocar las instrucciones adecuadas a los valores que se evaluan
en las bifurcaciones.
Algoritmos
V V F
F F F
Algoritmos
• Operadores Lógicos:
• O, Or, ||
O V F
V V V
F V F
Algoritmos
• Operadores Lógicos:
• No, Not, !
No V F
F V
Algoritmos
var4=(var1*var1)/var3
var4=1
Si Si
var4>=1 && var1!=0
No
Algoritmos
var4=(var3%var1)
var4=0
Si No
(var4!=0 || var2>0)
&& (var3==4)
No
Algoritmos
• Analicemos los siguientes casos
var1=2, var4=1,var3=4
var4=(var4+var1)
var4=3
Si No
!(var1 && (var4>=var1))
Cualquier proposición distinta de cero
Es VERDADERO
No
Algoritmos
si si
El orden es
var1>var2 &&
var1,var,var3 var2>var3 var1,var2,
var1>var3
var3
No
No
Ingrese el
primer valor
El orden es
var1,var3
var2
var1
si si
El orden es
var2>var3 var1>var3 var2,var1,
Ingrese el var3
segundo
valor No No
Fin
El orden es
var2 var2,var3
var1
si
El orden es
Ingrese el
var2>var1 var3,var2
tercer valor
var1
No
El orden es
var3 v3,var1
var2
1
Diagrama de Flujo
Ejercicio: Cree el diagrama de flujo para el algoritmo que multiplica
tres números y muestre el resultado
Ejercicio: Cree el diagrama de flujo para que divida dos números y
muestre el resultado
Ejercicio: Cree el diagrama de flujo para que resuelva la ecuación de
primer grado y muestre el resultado
Ejercicio: Cree el diagrama de flujo para que resuelva la ecuación de
segundo grado, para valores reales e imaginarios, y muestre el
resultado
Ejercicio: Cree el diagrama de flujo permita sumar tres números
ingresados por teclado y muestre el resultado
Ejercicio: Cree el diagrama de flujo que permita sumar “n” números y
muestre el resultado. El valor de “n” debe ser ingresado por teclado al
igual que los números que se sumarán.
Algoritmos
• Repaso de Bifurcaciones
• Aprendizajes Esperados
• Conceptos de Ciclos
• Cuándo se aplican los ciclos
Algoritmos
si si
El orden es
var1>var2 &&
var1,var,var3 var2>var3 var1,var2,
var1>var3
var3
No
No
Ingrese el
primer valor
El orden es
var1,var3
var2
var1
si si
El orden es
var2>var3 var1>var3 var2,var1,
Ingrese el var3
segundo
valor No No
Fin
El orden es
var2 var2,var3
var1
si
El orden es
Ingrese el
var2>var1 var3,var2
tercer valor
var1
No
El orden es
var3 v3,var1
var2
1
Algoritmos
• Concepto de Ciclo
• Un ciclo es la repetición de un conjunto de instrucciones. Dicho ciclo culmina cuando
se cumple una condición de termino.
Instrucción 2
Instrucción N
Incremento/
Decremento
Algoritmos
N,var,cont,
Suma=0
N var cont suma
Ingrese
cuantos
números va
a sumar
2 1 1 0
N
2 2 1
cont=1
3 3
V
Ingrese el
cont<=N
cont valor
var
El resultado
es suma
suma=suma+var
Fin
cont=cont+1
Algoritmos
N,var,cont,
mayor = -1
Ingrese
cuantos
números va
a sumar
cont=1
V
Ingrese el
cont<=N
cont valor
var
El resultado
es mayor V
cont==1 ||
mayor=var
var>mayor
Fin F
cont=cont+1
Algoritmos
• Ejemplo: Crear un algoritmo que calcule
i
1
Inicio
N,var,cont,
suma=0
Ingrese
cuantos
números va
a sumar
cont=1
V
cont<=N suma=suma+cont
cont=cont+1
El resultado
es suma
Fin
GRACIAS