Anda di halaman 1dari 20

Diagramas de Flujo

INFORMACION DE LOS DIAGRAMAS DE


FLUJO
Introduccin

Un diagrama de flujo es la representacin grafica del flujo o


secuencia de rutinas simples. Tiene la ventaja de indicar la
secuencia del proceso en cuestin, las unidades involucradas y los
responsables de su ejecucin; en pocas palabras es la
representacin simblica o pictrica de un procedimiento
administrativo.

Son de gran importancia ya que ayudan a designar cualquier


representacin grafica de un procedimiento o parte de este; el
diagrama de flujo como su nombre lo dice representa el flujo de
informacin de un procedimiento.

Existen diversos mtodos que se pueden llevar a cabo en


procedimientos de los arreglos (vector), ya sean en forma de
ordenacin, como de bsqueda.

El mtodo de ordenacin es una de los procedimientos ms comunes


y tiles en el procesamiento de datos, es la clasificacin u
ordenacin de los mismos. Se considera ordenar al proceso de
reorganizacin un conjunto dado de objetos en una secuencia
determinada.

El mtodo de ordenacin ms conocido y popular entre estudiantes


y aprendices de programacin, es el mtodo burbuja, por su
facilidad de comprensin y programacin.
El mtodo de bsqueda es una operacin que tiene por objeto
la localizacin de un elemento dentro de la estructura de datos.
Encontramos dos tcnicas que utiliza este mtodo de acceso, para
encontrar elementos dentro de un array: Bsqueda secuencial y
bsqueda binaria.

La bsqueda secuencial es la tcnica ms simple para buscar un


elemento en un arreglo. Consiste en recorrer el arreglo elemento a
elemento e ir comparando con el valor buscado (Clave). El resultado
de la bsqueda es un solo valor, y ser la posicin del elemento
buscado o cero.

La bsqueda binaria es el mtodo ms eficiente para encontrar


elementos en un arreglo ordenado. El proceso comienza
comparando el elemento central del arreglo con el valor buscado.

Definicin y explicacin de los Flujogramas

Son de gran importancia ya que ayudan a designar cualquier


representacin grafica de un procedimiento o parte de este; el
diagrama de flujo como su nombre lo indica representa el flujo de
informacin de un procedimiento.

En la actualidad los diagramas de flujo son considerados en la

mayora de las empresas o departamentos de sistemas como uno de


los principales instrumentos en la realizacin de cualquier mtodo o
sistema.
Son importantes los diagramas de flujo en toda organizacin y

departamento, ya que este permite la visualizacin de las


actividades innecesarias y verifica si la distribucin del trabajo esta
equilibrada, es decir, bien distribuida en las personas, sin sobrecargo
para algunas mientras otros trabajan con mucha holgura.
Los diagramas de flujo son importantes para el diseador por
que le ayudan en la definicin, formulacin, anlisis y solucin del
problema. El diagrama de flujo ayuda al anlisis a comprender el
sistema de informacin de acuerdo con las operaciones de
procedimientos incluidos, le ayudara analizar esas etapas, con el fin
tanto de mejorarlas como de incrementar la existencia de sistemas
de informacin para la administracin.

Ejemplo:

Caractersticas de los flujogramas


De uso, permite facilitar su empleo.
De destino, permite la correcta identificacin de actividades.
De comprensin e interpretacin, permite simplificar su
comprensin.
De interaccin, permite el acercamiento y coordinacin.
De simbologa, disminuye la complejidad y accesibilidad.
De diagramacin, se elabora con rapidez y no requiere de recursos
sofisticados.
Cmo se construye
Debe de indicar claramente dnde inicia y dnde termina el
diagrama.
Cualquier camino del diagrama debe de llevarte siempre a la
terminal de fin.
Organizar los smbolos de tal forma que siga visualmente el flujo de
arriba hacia abajo y de izquierda a derecha.
No usar lenguaje de programacin dentro de los smbolos.
Centrar el diagrama en la pgina.
Las lneas deben ser verticales u horizontales, nunca diagonales.

o No cruzar las lneas de flujo empleando los conectores adecuados


sin hacer uso excesivo de ellos.

1- No fraccionar el diagrama con el uso excesivo de conectores.


2 - Solo debe llegar una sola lnea de flujo a un smbolo. Pero pueden
llegar muchas lneas de flujo a otras lneas.

1 - Las lneas de flujo deben de entrar a un smbolo pro la parte


superior y/o izquierda y salir de l por la parte inferior y/o derecha.
2 - Evitar que el diagrama sobrepase una pgina; de no ser posible,
enumerar y emplear los conectores correspondientes.
3 - Usar lgica positiva, es decir, realizar procesos cuando es
verdadera la condicin y expresar las condiciones de manera clara
(por ej., "no es a =/= de b" ==> "a=b").
4 -Comentar al margen nicamente cuando sea necesario.

Smbolos de los diagramas de flujo

Tipos de Diagramas de flujo


Hay varios tipos distintos de flujogramas que pueden usarse.
Flujograma de primer nivel o de direccin descendente.
Un flujograma de primer nivel muestra los pasos principales de un
proceso y puede incluir tambin los resultados intermedios de cada
paso (el producto o servicio que se produce) y los subpasos
correspondientes. Este tipo de flujograma se usa por lo general para
obtener un panorama bsico del proceso e identificar los cambios que
se producen en el proceso. Es sumamente til para identificar los
miembros correctos para el equipo (aquellas personas que participan
en el proceso) y para elaborar indicadores para observar y seguir el
proceso por su concentracin en los resultados intermedios.

La mayora de los procesos pueden graficarse en 4 5 recuadros que


representan los principales pasos o actividades del proceso. En
realidad, es buena idea usar solamente 4 5 recuadros, porque no
obliga a tener en cuenta los pasos ms importantes. Los dems pasos
son normalmente subpasos de los ms importantes.

Flujograma de segundo nivel o detallado


Un flujograma detallado indica los pasos o actividades de un proceso
e incluye, por ejemplo, puntos de decisin, perodos de espera, tareas
que se tienen que volver a hacer con frecuencia (repeticin de tareas
o tareas duplicadas) y ciclos de retroalimentacin. Este tipo de
diagrama de flujo es til para examinar reas del proceso en forma
detallada y para buscar problemas o aspectos ineficientes.

Flujograma de ejecucin o
matriz
Un flujograma de ejecucin representa en forma grfica el proceso en
trminos de quin se ocupa de realizar los pasos. Tiene forma de
matriz e ilustra los diversos participantes y el flujo de pasos entre
esos participantes. Es muy til para identificar quin proporciona los
insumos o servicios a quin, as como aquellas reas en las que
algunas personas pueden estar ocupndose de las mismas tareas.

Elaboracin de Flujogramas
Este se rige por una serie de smbolos, normas y pautas
convencionales las cuales son:
1. El formato o esqueleto del flujograma debe dividirse en partes que
representan a los departamentos, secciones o dependencias
involucradas en el procedimiento. Cada departamento o seccin debe
mostrarse una sola vez en el flujograma y en el mismo orden o
secuencia cronolgica de su aparicin en el procedimiento que se
describe de izquierda a derecha.
2. Se debe mostrar una misma dependencia mas de una vez en el
flujograma aun cuando las acciones del procedimiento regresen a la
misma.
3. Las lneas indicadoras del flujograma deben ser ms delgadas que
las lneas divisorias del formato, rectas y angulares, dotadas de
flechas en sus extremos terminales.
4. Cada paso o accin del procedimiento debe enumerarse con
claridad y describirse brevemente con muy pocas palabras.
5. Cuando algn documento queda retenido en alguna dependencia
del flujograma se indica segn sea archivado: definitivamente,
temporalmente o retenido por algunos das (D), horas (O) o
minutos ()
6. Cuando hay que destruir algn documento luego de ser utilizado
en el procedimiento se indica con una (X) grande.
7. Cuando en el procedimiento algn documento da origen a otro se
indicar en el flujograma mediante una flecha interrumpida.
8. Al igual que vimos en los organigramas en los flujogramas cuando
varias lneas se intercruzan sin tener relacin se indica mediante una

inflexin en cualquiera de ellas.


Siempre resultar mejor que el flujograma se muestre en una sola
hoja, pero cuando en su extensin se tenga que continuar en otra
pgina, se seala mediante un smbolo cualquiera dentro de un
circulo, en la pgina donde se interrumpe y el mismo que suele
llamarse conector se colocar en otra pgina como sigue.
Publicado por Manuel Gonzalez Sanchez en 07:39 0 comentarios
Etiquetas: programacion, pseudocodigo

2.- Pseudocodigos

EJERCICIOS DE PROGRAMACIN EN
PSEUDOCDIGO
Representacin de variables
Cuando representamos datos, numricos o alfanumricos, debemos
darles un nombre. Una variable es un nombre que representa el valor
de un dato. En esencia, una variable es una zona o posicin de
memoria en la computadora donde se almacena informacin. En un
pseudocdigo y tambin en un programa se pueden crear tantas
variables como queramos.

Ejemplos:
A = 50; Variable tipo numrica A cuyo valor es 50.
Ciudad = "Asuncin"; Variable alfanumrica o de tipo carcter
Ciudad, cuyo valor es "Asuncin"
X = C + B; Variable numrica X cuyo valor es la suma de los valores
de las variables numricas C y B. (Nota: C y B deben tener algn
valor).
Asignacin
Para asignar un valor a una variable se utilizar el smbolo = que en
este contexto significa es reemplazado por. De forma general
tendremos que:
Nombre_variable = expresin
El valor de Nombre_variable se sustituye por el valor de expresin

Ejemplos:
C = 13
B = 25
X = C + B (despus de estas instrucciones, X contendr el valor 13 +
25 = 38)
Existe otra forma de asignar un valor a una variable, a travs de la
instruccin leer:
Leer (Nombre_variable)
Esta instruccin pide al usuario un valor que ser asignado a la
variable Nombre_variable, es decir, en Nombre_variable se almacena
el valor ingresado por el usuario.
Operadores de relacin
Los operadores relacionales se utilizan para formar expresiones que al
ser evaluadas producen un valor de tipo lgico: verdadero o falso.

Estructuras de seleccin
El formato de la estructura de seleccin es:
si (condicin) entonces
instruccin 1
instruccin 2

...................
instruccin n
si no
instruccin a
instruccin b
...................
instruccin z
fin si
El resultado de evaluar la condicin puede ser verdadero o falso: en
el caso de que sea verdadero, se ejecutarn: instruccin 1,
instruccin 2, ... , instruccin n. Si el resultado de evaluar condicin
es falso se ejecutarn: instruccin a, instruccin b, ... , instruccin z.
Ejemplo:
Si A = 5 entonces
Imprimir("A es 5")
si no
imprimir("A no es igual a 5")
fin si
Estructuras de repeticin
El formato de la estructura de repeticin es:
mientras (condicin)
instruccin 1instruccin 2.....instruccin n
fin mientras
El resultado de evaluar condicin puede ser verdadero o falso:
Mientras sea verdadero, se ejecutarn: instruccin 1, instruccin
2, ... , instruccin n. Estas instrucciones dejarn de ejecutarse
cuando condicin sea falso.
Ejemplo:
leer(contrasea)
mientras (contrasea < > "joshua")
imprimir("La contrasea es incorrecta !")
leer (contrasea)
fin-mientras

imprimir("Ha tecleado la contrasea correcta")


Nota: El bucle se repetir mientras que contrasea <> joshua sea
verdadero
Salida de resultados
Los resultados de nuestros algoritmos los vamos a mostrar al usuario
a travs de la instruccin imprimir, que tiene la siguiente forma
general:
Imprimir(argumento 1, argumento 2, argumento 3, ... , argumento
n)
Donde los argumentos pueden ser cadenas de caracteres
entrecomilladas o variables:
Si son cadenas de caracteres entrecomillados se imprime
literalmente lo que est entre comillas
Si son variables se imprime el contenido de dicha variable (no el
nombre)
Ejemplo:
sueldo = 1000
trabajador = Martnez
Imprimir( el sueldo de , trabajador , es , sueldo , Euros. )
La instruccin imprimir, muestra lo siguiente: el sueldo de Martnez es
1000 Euros.

EJERCICIOS: PROPUESTOS
Ejercicio 1: Observa la siguiente secuencia de instrucciones:
1.
2.
3.
4.
5.
6.
7.

A=5
B=7
C=2
A=A+B+C
B=C/2
A=A/B+A^C
Imprimir(A)

Ahora responde a las siguientes cuestiones:


a) Qu valor contiene A despus de la cuarta instruccin?

b) Qu valor contiene B despus de la quinta instruccin?


c) Qu valor contiene A despus de la sexta instruccin?
d) Qu valor imprime la ltima instruccin?
e) Si en lugar de Imprimir(A) hubisemos escrito Imprimir(A) Qu
aparecera?
Ejercicio 2: Observa la siguiente secuencia de instrucciones:
1.
2.
3.
4.
5.
6.

A=5
B=7
C=1
D = (A == B)
E = (A <> B)
F = (MOD(B/A) >= C)

Ahora responde a las siguientes cuestiones:


a) Qu valor contiene D despus de la cuarta instruccin?
b) Qu valor contiene E despus de la quinta instruccin?
c) Qu valor contiene F despus de la sexta instruccin?
d) Cunto valen A, B y C despus de la ltima instruccin?
Ejercicio 3: Observa la siguiente secuencia de instrucciones:
1.
2.
3.
4.
5.
6.

leer(A)
leer(B)
leer(C)
D = (A == B)
E = (A <> B)
F = (MOD(B/A) >= C)

Ahora responde a las siguientes cuestiones: Supongamos que el


usuario introduce 3 en A, 4 en B y 5 en C
a) Qu valor contiene D despus de la cuarta instruccin?
b) Qu valor contiene E despus de la quinta instruccin?
c) Qu valor contiene F despus de la sexta instruccin?
d) Cunto valen A, B y C despus de la ltima instruccin?

Ejercicio 4: Observa la siguiente secuencia de instrucciones:


1.
2.
3.
4.
5.
6.
7.

leer (A)
resultado = 1
mientras (A>1)
resultado = resultado * A
A=A1
fin mientras
imprimir(resultado)

Ahora responde a las siguientes cuestiones:


a) Si en la primera instruccin se introduce un valor 2 en A Qu
valor se imprime?
b) Si en la primera instruccin se introduce un valor 3 en A Qu
valor se imprime?
c) Si en la primera instruccin se introduce un valor 4 en A Qu
valor se imprime?
d) Qu se est calculando?
Ejercicio 5: Observa la siguiente secuencia de instrucciones:
1.
2.
3.
4.
5.
6.

leer (A)
Si (A>0)
Imprimir (A,es positivo)
Si no
Imprimir (A,es negativo)
Fin si

a) Describe, instruccin por instruccin, qu se est haciendo con


este algoritmo.
b) Qu pasa si A = 5? Y si A = - 100?
c) Escribe otro algoritmo para distinguir mltiplos de 3 y compralo
Ejercicio 6: Observa la siguiente secuencia de instrucciones:
1. leer (NumeroA)
2. leer (NumeroB)

3. Si (NumeroA < numeroa =" 5" numerob =" -" numeroa =" 10"
numerob =" 100?" numeroa =" 10" numerob =" 10?
Publicado por Manuel Gonzalez Sanchez en 07:10 0 comentarios
Etiquetas: algoritmo, programacion, pseudocodigo

jueves 5 de marzo de 2009

1.- Concepto de algoritmo


ALGORITMO
Conjunto de acciones o secuencias de operaciones ejecutadas en un
determinado orden para resolver un problema.
Accin
Acontecimiento producido por un actor en un tiempo finito que
produce un resultado definido y preciso y adems genera cierta
transformacin.
Analizaremos la accin
Existen diferentes tipos de acciones:
Accin simple: Realizadas directamente
Accin compleja: No se pueden realizar directamente sino a travs
de una descomposicin de acciones ms simples (diseo Top-down).
Transformacin Generada en los elementos intervinientes. Para
determinar la transformacin debo conocer el ESTADO.
ESTADO Es la observacin de los elementos del sistema en un
instante de tiempo dado.
Hay tres tipos de estado
Estado inicial Instante donde comienza la accin.(Ei)
Estado intermedio Instante observado en cualquier momento entre el
comienzo y la finalizacin de la accin.
Estado Final Instante observado donde finaliza la accin (Ef)
Caractersticas de los algoritmos
Definido (confiable)
Debe indicar un orden a seguir
Debe ser finito, terminar en un nmero finito de pasos.
*Nota: Algoritmo Se trata de una herramienta capaz de resolver un
problema. Todas las situaciones problemticas pueden ser resueltas a
travs de algoritmos.

ALGORITMOS:
Lenguaje algortmico: Se realiza anlisis y se elige el mtodo a
utilizar, el conjunto de operaciones y orden conforman el algoritmo.
PROGRAMAS:
Lenguaje informtico: Es aquel por el cual dicho algoritmo se codifica
a la computadora.
Programa > algoritmo destinado a gobernar una computadora.
Lenguaje de programacin:
Pueden haber diferentes lenguajes tales como: visual Basic, delphi,
c++, java, etc.
Pueden tener diferente metodologa de programacin tales como:
Modular, estructurada, orientada a objetos, etc.
Cubren necesidades especficas como ser: el visual Fox Pro, es para
programar bases de datos.
Metodologa para la resolucin de problemas
Hay cinco etapas para resolver problemas algortmicos, estas son:
Definicin del sistema: definir que va a hacer el programa y que
solucin obtendremos.
Diseo del sistema: Establecer que tipo de metodologa usaremos
para solucionar el problema (Ej. Top down o Botton up).
Codificacin: Es la etapa en donde se escribe el algoritmo en un
lenguaje de programacin.
Cuando se compila el algoritmo, hay un antes y un despus
Antes > Programa Fuente (lenguaje de programacin).
Despus > Programa ejecutable (lenguaje de maquina).
Prueba y depuracin: Se realizan pruebas para verificar el
funcionamiento del programa, se prueba con valores vlidos y con no
vlidos para ver como se comporta y corregir si es necesario.
Documentacin y Mantenimiento: Se basa en la instalacin,
funcionamiento y caractersticas del programa. Permite corregir
errores o modificar el programa (estos cambios son el mantenimiento
del programa).
Hay dos tipos de documentacin, estas son:
Interna > viene dentro del programa (Ej. Readme, caractersticas
operativas)
Externa > Viene fuera del programa, diagramas de flujo, manuales
de usuario, consejos de uso, etc.

Tcnicas de diseo
Hay tres tipos de tcnicas, estas son:
TOP DOWN (Diseo descendente): Consiste en tomar el problema
inicial y descomponerlo en problemas ms pequeos, de solucin
sencilla.
BOTTON UP: Consiste en partir de los detalles ms precisos del
algoritmo completando mdulos de mayor complejidad es inverso al
anterior - .
WARNIER ORR: Utiliza una representacin semejante a cuadros
sinpticos para Mostar el funcionamiento y organizacin del
algoritmo.
Tcnicas para la formulacin de algoritmos
Hay dos tipos, estas son:
*Estos no pueden ser ejecutados por una computadora
Diagramas de Flujo > se basan en la utilizacin de smbolos para
representar las acciones.

Primera Parte
Catedratico: M.E. Manuel Gonzalez
Publicado por Manuel Gonzalez Sanchez en 22:10 0 comentarios

lunes 23 de febrero de 2009

SOLUCION DE PROBLEMAS MEDIANTE ALGORITMOS

ETAPAS PARA LA SOLUCIN DE PROBLEMAS

Objetivos
Describir la diferencia entre la solucin de problemas algoritmica y
herstica.
Presentar y describir las seis etapas para resolver un problema.
Etapas para la solucin de problemas
Identificar el problema.
Cul es el problema?
Comprender el problema.
Qu se sabe del el problema?
Antes de continuar hacia delante, es necesario comprender los
aspectos que conlleva el problema, como la base de conocimiento de
la persona o de la mquina para quien se va a resolver el problema.
Comenta sobre aquello que ayuda a entender el problema.
Describe el conocimiento bsico y lo que se espera debe conocerse
para resolver el problema.
Identificar las distintas alternativas (vias alternas) para resolver el
problema.
De cuntas formas se puede resolver el problema? Indica los:
Aspectos a favor de cada alternativa
Aspectos en contra de cada alternativa
Seleccionar la mejor alternativa de la etapa anterior.
Con qu alternativa me quedo? Para seleccionar la mejor via, se
requiere establecer los criterios de evaluacin.

Hacer una lista de instrucciones que faciliten la solucin del problema.


Cmo resolver el problema? Dar instrucciones, paso por paso, a
partir de la base de conocimiento establecida en la etapa 2. No se
pueden dar instrucciones que el ser humano o la mquina no pueda
entender. En el caso de las computadoras, la base de conocimiento es
muy limitada.
Lista de instrucciones, etapa por etapa:
Evaluar la solucin.
Cul fue el resultado? Funcion? Si el resultado es incorrecto o
insatisfactorio, hay que volver a empezar.

Tipos de problemas
Algunos problemas, como hacer caf o cambiar la rueda de un
automoviel, se resuelven con una serie de actividades claras y
especfcas. Esta forma de solucin se conoce como solucin
algortmica. En este caso, las distintas actividades se ejecutan en un
orden lgico, etapa por etapa. Estas etapas se llaman algoritmo,
entre los cuales se encuentran los ordinogramas (flujogramas), las
tablas de decisin y los pseudocdigos. La solucin a otros problemas
menos sistemticos como qu computadora comprar, dnde invertir el
capital, cundo mover las acciones de una cuenta a otra, requiere
mayor conocimiento, experiencia e inmiscuirse en un proceso de
intento y error. La solucin a este tipo de problemas que no resite la
simpleza y claridad de ir etapa por etapa se conoce como solucin
heurstica.
Las computadoras estn construidas para trabajar con soluciones
algortmicas. El campo de la computadora que trabaja con soluciones
hersticas se conoce como inteligencia artificial (IA).
Solucin de problemas con computadoras
En el campo de las computadoras se entiende por solucin las
instrucciones que se dan a la computadora, paso por paso (etapa 5
del proceso de solucin de problemas) con el propsito de obtener el
mejor resultado. El resultado es la salida (output) o la respuesta
asistida por la computadora. Se entiende por programa el grupo de

instrucciones que, una vez codificadas en un lenguaje de


computadora, hacen posible la solucin.

GLOSARIO
Algoritmo
Solucin algortmica
Solucin herstica
Programa
Resultados
Solucin
Preguntas de discusin
Cu;es son las seis etapas para resolver un problema?
Qu es una solucin de problemas algortmica?
Menciona dos problemas de solucin algortmica.
Qu es una solucin de problemas heurstica? Menciona dos
problemas de este tipo.
Cules de estos problemas puede resolver de forma eficiente la
computadora?

Aplicacin de conocimiento
Completa las seis etapas del proceso de solucin de problemas con
uno de los problemas mencionados en el nmero 3 de las "Preguntas
de discusin".

Por cada una de las siguientes tareas, escribe una cadena numerada
de instrucciones (una solucin), paso por paso, de tal forma que
cualquier persona pueda realizarlas sin necesidad de preguntar.
Define el conocimiento bsico que esperas debe poseer esa persona
(prerrequisitos) para poder seguir las instrucciones. Por ejemplo, para
hacer una taza de caf, se debe conocer a priori qu es leche, taza,
agua, harina de caf, y as sucesivamente.

Hacer una taza de caf


Reponer una rueda del automvil.
Estudiar en la universidad.

Anda mungkin juga menyukai