Zaragoza Chimaltenango
PEM Informtica y computacin
Primer Ciclo
Algoritmos
Diagrama de Flujos
Algoritmos
Lic. Jos Isaas Sunuc
1
INDICE
Contenido
Qu es un Diagrama de Flujo?............................................................................... 3
Estructura general de un programa...........................................................................4
Bloques de un programa......................................................................................... 4
Partes principales de un programa............................................................................4
Tipos de las Instrucciones........................................................................................ 5
Datos................................................................................................................... 6
Tipos de datos....................................................................................................... 6
Constantes y variables............................................................................................ 9
Constantes.......................................................................................................... 9
Variables........................................................................................................... 11
Diferencias entre ambas................................................................................... 12
2
Qu es un Diagrama de Flujo?
Un diagrama de flujo, tambin llamado Flujograma de Procesos o Diagrama de
Procesos, representa la secuencia o los pasos lgicos (ordenados) para realizar
una tarea mediante unos smbolos. Dentro de los smbolos se escriben los
pasos a seguir. Un diagrama de flujo debe proporcionar una informacin clara,
ordenada y concisa de todos los pasos a seguir.
Por lo dicho anteriormente, podramos decir que: "Un diagrama de flujo es una
3
representacin grfica o simblica de un proceso".
4
Estructura general de un programa.
Un programa puede considerarse como una secuencia de acciones (instrucciones)
que manipulan un conjunto de objetos (datos).
Bloques de un programa
5
largo del programa, si bien mantienen una cierta localizacin geomtrica impuesta
por la propia naturaleza de las mismas.
Proceso o algoritmo: est formado por las instrucciones que modifican los
objetos a partir de su estado inicial hasta el estado final, dejando stos
disponibles en la memoria central.
6
Instrucciones compuestas: Son aquellas que el procesador no puede
ejecutar directamente, sino que realiza una llamada a un subprograma,
subrutina o prrafo.
Datos
En ciencias de la computacin un tipo de dato informtico o simplemente tipo es
un atributo de los datos que indica al ordenador (y/o al programador) sobre la
clase de datos que se va a trabajar. Esto incluye imponer restricciones en los
datos, como qu valores pueden tomar y qu operaciones se pueden realizar.
Los tipos de datos comunes son: nmeros enteros, nmeros con signo
(negativos), nmeros de coma flotante (decimales), cadenas alfanumricas (y
unicodes), estados, etc.
Tipos de datos
Un tipo de datos es la propiedad de un valor que determina su dominio (qu
valores puede tomar), qu operaciones se le pueden aplicar y cmo es
representado internamente por el computador.
Nmeros enteros
7
El tipo int (del ingls integer, que significa entero) permite representar nmeros
enteros.
Los valores que puede tomar un int son todos los nmeros enteros: ... -3, -2, -1, 0,
1, 2, 3, ...
Los nmeros enteros literales se escriben con un signo opcional seguido por una
secuencia de dgitos:
1570
+4591
-12
Nmeros reales
El tipo float permite representar nmeros reales.
El nombre float viene del trmino punto flotante, que es la manera en que el
computador representa internamente los nmeros reales.
Hay que tener mucho cuidado, porque los nmeros reales no se pueden
representar de manera exacta en un computador. Por ejemplo, el nmero decimal
0.7 es representado internamente por el computador mediante la aproximacin
0.69999999999999996. Todas las operaciones entre valores float son
aproximaciones. Esto puede conducir a resultados algo sorpresivos:
>>> 881.9843000
881.9843
>>> -3.14159
-3.14159
>>> 1024.
1024.0
>>> .22
0.22
Otra representacin es la notacin cientfica, en la que se escribe un factor y una
potencia de diez separados por una letra e. Por ejemplo:
>>> -2.45E4
-24500.0
8
>>> 7e-2
0.07
>>> 6.02e23
6.02e+23
>>> 9.1094E-31
9.1094e-31
Los dos ltimos valores del ejemplo son iguales, respectivamente, a 6.021023
Nmeros complejos
El tipo complex permite representar nmeros complejos.
Los nmeros complejos tienen una parte real y una imaginaria. La parte imaginaria
es denotada agregando una j inmediatamente despus de su valor:
3 + 9j
-1.4 + 2.7j
Valores lgicos
Los valores lgicos True y False (verdadero y falso) son de tipo bool, que
representa valores lgicos.
El nombre bool viene del matemtico George Boole, quien cre un sistema
algebraico para la lgica binaria. Por lo mismo, a True y False tambin se les llama
valores booleanos. El nombre no es muy intuitivo, pero es el que se usa en
informtica, as que hay que conocerlo.
Texto
A los valores que representan texto se les llama strings, y tienen el tipo str.
Los strings literales pueden ser representados con texto entre comillas simples o
comillas dobles:
"ejemplo 1"
'ejemplo 2'
La ventaja de tener dos tipos de comillas es que se puede usar uno de ellos
cuando el otro aparece como parte del texto:
"Let's go!"
'Ella dijo "hola"'
Es importante entender que los strings no son lo mismo que los valores que en l
pueden estar representados:
9
>>> 5 == '5'
False
>>> True == 'True'
False
Los strings que difieren en maysculas y minsculas, o en espacios tambin son
distintos:
El valor None tiene su propio tipo, llamado NoneType, que es diferente al de todos
los dems valores.
Constantes y variables
Constantes
def: Una constante es un dato cuyo valor no puede cambiar durante la
ejecucin del programa. Recibe un valor en el momento de la compilacin y
este permanece inalterado durante todo el programa.
const
Min = 0;
Max = 100;
Sep = 10;
var
i : integer;
begin
i := Min;
while i < Max do begin
writeln(i);
i := i + Sep
end
end.
10
En este ejemplo se declaran tres constantes (Min, Max y Sep). En la primera lnea del
cuerpo del programa se asigna una constante a una variable. En la siguiente, se usa una
constante en una comparacin. Y en la cuarta, la constante Sep interviene en una expresin
que se asigna a una variable. El resultado de ejecutar este programa sera una impresin en
pantalla de los nmeros: 0, 10, 20, 30, 40, 50, 60, 70, 80 y 90.
constantes expresin
Constantes literales
Son valores de cualquier tipo que se utilizan directamente, no se declaran ya que no tienen
nombre. En el siguiente ejemplo tienes un par de constantes literales (el 3, el 4, y el
3.1416):
Constantes declaradas
Tambin llamadas constantes con nombre, son las que se declaran en la seccin const
asignndoles un valor directamente. Por ejemplo:
const
Pi = 3.141592; (* valor real *)
Min = 0; (* entero *)
Max = 99; (* entero *)
Saludo = 'Hola'; (* cadena caract. *)
Constantes expresin
Tambin se declaran en la seccin const, pero a estas no se les asigna un valor
directamente, sino que se les asigna una expresin. Esta expresin se evala en tiempo de
compilacin y el resultado se le asigna a la constante. Ejemplo:
const
Min = 0;
Max = 100;
Intervalo = 10;
N = (Max - Min) div Intervalo;
Centro = (Max - Min) div 2;
11
Variables
def: Una variable es un nombre asociado a un elemento de datos que est
situado en posiciones contiguas de la memoria principal, y su valor puede
cambiar durante la ejecucin de un programa.
Declaracin
Iniciacin
Utilizacin
Declaracin de variables
Esta es la primera fase en la vida de cualquier variable. La declaracin se realiza en la
seccin que comienza con la palabra var. Si quieres ms informacin, puedes ir al apartado
que trata sobre la declaracin de variables en el tema Estructura de un programa.
Nota: Toda variable que vaya a ser utilizada en Pascal tiene que ser
previamente declarada.
Iniciacin de variables
Esto no es ms que darle un valor inicial a una variable. As como lo primero que se hace
con una variable es declararla, lo siguiente tiene que ser iniciarla. Esto se hace para evitar
posibles errores en tiempo de ejecucin, pues una variable tiene un valor indeterminado
despus de declararla. Principalmente, existen dos maneras de otorgar valores iniciales a
variables:
begin
...
i:=1;
readln(n);
while i < n do begin
(* cuerpo del bucle *)
i := i + 1
end;
...
end.
12
Utilizacin de variables
Una vez declarada e iniciada una variable, es el momento de utilizarla. Esta es la parte que
presenta un mayor abanico de posibilidades. A continuacin tienes unas cuantas:
Incrementar su valor:
i := i + 1
Controlar un bucle:
for i:=1 to 10 do ...
Chequear una condicin:
if i<10 then ...
Participar en una expresin:
n := (Max - Min) div i
Y otras que ya irs descubriendo
Principales diferencias:
13
Nota: Debido a la ltima sentencia, el ejemplo no compilara. Pero se incluye
para que veas que no puedes cambiar el valor de una constante.
14