Sei sulla pagina 1di 18

Instituto Politcnico

Nacional
Escuela Superior de Cmputo

Algoritmia y
programacin
estructurada

Tema 01: Algoritmia y diagramas de


flujo
M. en C. Edgardo Adrin Franco Martnez
http://www.eafranco.com
edfrancom@ipn.mx
@edfrancom

edgardoadrianfrancom

Estructuras de datos (Prof. Edgardo A. Franco)

Algoritmia
Qu es un algoritmo?
Mtodos algortmicos
Diagrama de flujo
Smbolos utilizados en los diagramas
de flujo
Reglas para la construccin de
diagramas de flujo
Ejemplos

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Contenido

rea de estudio cuyo objeto de estudio son los


algoritmos.
En computacin un algoritmo permite modelar la
serie de pasos necesarios a realizar para poder
resolver una parte o la totalidad de un problema
computacional.
Al hablar de un problema computacional se hace
referencia a la necesidad de dada cierta informacin
alcanzar un resultado buscado sabiendo que existe
una o un conjunto de soluciones capaces de ser
encontradas utilizando las capacidades de
procesamiento de una computadora.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Algoritmia

Es un conjunto ordenado y finito de


operaciones que permite hallar la solucin
de un problema.
Podemos decir que un algoritmo es una
"receta", ya que si se sigue de manera
correcta encuentran un resultado en un
tiempo acotado.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Qu es un algoritmo?

P.g. escribe un algoritmo para resolver el problema


de llegar de tu casa a ESCOM.
4

Es
un
conjunto
preescrito
de
instrucciones o reglas bien definidas,
ordenadas y finitas que permite realizar
una actividad mediante pasos sucesivos que
no generen dudas a quien lo ejecute.

Dados un estado inicial y una entrada,


siguiendo los pasos sucesivos se llega a un
estado final y se obtiene una solucin.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Definicin formal de
algoritmo

Un algoritmo es univoco, lo que implica que si se


ejecuta varias veces el mismo algoritmo sobre un
conjunto de datos de entrada, siempre se obtiene la
misma solucin a la salida. Adems, el resultado debe
generarse en un tiempo finito.
Los mtodos que utilizan algoritmos se utilizan se
denominan mtodos algortmicos, en oposicin a
los que implican algn juicio o interpretacin, que se
denominan heursticos. Los mtodos algortmicos se
pueden implementar fcilmente en computadoras; sin
embargo los mtodos heursticos no con facilidad,
adems de que no aseguran obtener la misma salida
siempre ante las mismas entradas.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Mtodos algortmicos

Existen distintas formas


grfica de representar un
algoritmo, el diagrama de
flujo fue una de las
primeras empleadas.
Un diagrama de flujo se
utiliza
smbolos
con
significados bien definidos
que representan los pasos
del
algoritmo,
y
representan el flujo de
ejecucin mediante flechas
que conectan los puntos
de inicio y de trmino.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Diagrama de flujo

Es la representacin grfica de un
algoritmo
Muestra los pasos o procesos a seguir
para alcanzar la solucin de un
problema
Utilizan smbolos (cajas) estndar y
tienen los pasos del algoritmo escritos
en estas cajas unidas por flechas
La secuencia del algoritmo esta
determinado por el flujo de la flechas

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Diagrama de flujo

Inicio y Fin

Almacenamiento/
Salida de datos

Lectura/Entrada
de datos

Conector

Proceso

Flujo del
diagrama

Decisin

Decisin mltiple

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Smbolos utilizados en los


diagramas de flujo

Sumar

Menos

Multiplicacin

Divisin

Equivalencia

>

Mayor que

<

Menor que

Mayor o igual que

Menor o igual que

<> o !=
o

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Smbolos utilizados en los


diagramas de flujo

Diferente de
Asignacin

La definicin de datos se da por supuesta, principalmente para


variables sencillas

10

y un fin
2.

Las lneas utilizadas para indicar la


direccin del flujo del diagrama deber ser
rectas: verticales u horizontales

3.

Todas las lneas utilizadas para indicar la


direccin del flujo del diagrama deben estar
conectadas mediante algn smbolo

4.

El diagrama de flujo debe construirse de


arriba hacia abajo y de izquierda a derecha

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Reglas para la
construccin de
diagramas
de
flujo
1. Todo diagrama de flujo debe tener un inicio

11

debe ser independiente del lenguaje de


programacin
6.

Si la construccin del diagrama de flujo


requiere ms de una hoja se deben utilizar
los conectores adecuados

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Reglas para la
construccin de
diagramas
de
flujo
5. La notacin utilizada en el diagrama de flujo

12

Disee un algoritmo para calcular el


rea de un triangulo.

Se recibe como entrada la base y la


altura.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Ejemplo 01

13

Calcular el rea de un triangulo. Se


recibe como entrada la base y la
altura.
Inicio
Inicio
base,
base, altura
altura

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Ejemplo 01

area
area (base
(base ** altura)
altura) // 2
2

rea
rea
14
Fin
Fin

Construir un algoritmo que,


al recibir como entrada una
clave de un empleado y los
seis primeros sueldos del ao
de este, calcule el ingreso
total semestral y el promedio
mensual para el empleado,
finalmente se imprimir su
clave, el ingreso total y el
promedio mensual.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Ejemplo 02

15

Inicio
Inicio

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Ejemplo 02

Construir un algoritmo
clave,
clave, su1,
su1, su2,
su2, su3,
su3,
que, al recibir como
su4,
su4, su5,
su5, su6
su6
entrada una clave de
un empleado y los seis
primeros sueldos del
ingreso
ingreso su1
su1 +
+ su2
su2 +
+ su3
su3 +
+ su4
su4 +
+ su5
su5 +
+ su6
su6
ao de este, calcule el
promedio
promedio ingreso
ingreso // 6
6
ingreso total semestral
y el promedio mensual
para
el
empleado,
clave,
clave, ingreso,
ingreso,
promedio
promedio
finalmente
se
imprimir su clave, el
ingreso total y el
promedio mensual.
Fin
Fin

16

Calcular la media de una


serie de nmeros positivos,
suponiendo que los datos se
leen uno a uno.
Un valor de cero como
entrada indicar que se ha
alcanzado el final de la serie
de nmeros positivos.

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Ejemplo 03

17

numdatos
numdatos
0
0
suma
suma 0
0

1
1

media
media suma/
suma/ (numdatos-1)
(numdatos-1)

media
media
dato
dato

Algoritmia y programacin estructurada


01: Algoritmia y diagramas de flujo
Prof. Edgardo Adrin Franco Martnez

Inicio
Inicio

Fin
Fin
numdatos
numdatos
numdatos
numdatos +
+1
1
suma
suma suma+
suma+ dato
dato

si
si

dato
dato <>0
<>0

no
no

1
1

18

Potrebbero piacerti anche