SlideShare una empresa de Scribd logo
1 de 21
INTRODUCCION A LOS ALGORITMOS
Diagramas de flujo
Representacion de los
algoritmos
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Diagramas de Flujo. Representación simbólica. Símbolos utilizados.
Convenciones. Técnicas de construcción de diagramas. Estructuras
básicas. Normas para su representación. Ejemplo.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Tanto en la fase de análisis del problema como durante el
diseño del algoritmo, se plantea la necesidad de representar
claramente el flujo de operaciones que se han de realizar
para su resolución y el orden en que estas operaciones
deber ser ejecutadas.
Una vez que el algoritmo esté diseñado se debe proceder a
representarlo mediante algún método de programación,
siendo los más usuales: diagramas de flujo, pseudocódigo,
diagramas N-S o Tablas de decisión.
Esta representación independiza al algoritmo del lenguaje
de programación elegido, permitiendo de esta manera que
pueda ser codificado indistintamente en cualquier lenguaje.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Las dos herramientas mas utilizadas comunmente para describir
algoritmos son:
Diagramas de Flujo: son representaciones gráficas de secuencias
de pasos a realizar. Cada operacion se representa mediante un
símbolo normalizado el Instituto Norteamericano de Normalizacion
(ANSI - American National Standars Institute). Las líneas de flujo
indican el orden de ejecución.
Los diagramas de flujo suelen ser usados solo para representar
algoritmos pequeños, ya que abarcan mucho espacio.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Pseudocódigos: describen un algoritmo de forma similar a un
lenguaje de programacióon pero sin su rigidez, de forma más parecida
al lenguaje natural. Presentan la ventaja de ser más compactos que
los diagramas de flujo, más fáciles de escribir para las instrucciones
complejas y más fáciles de transferir a un lenguaje de programación.
El pseudocódigo no está regido por ningún estándar.
Algunas palabras usadas son LEER/IMPRIMIR para representar las
acciones de lectura de datos y salida de datos.
Calcular una altura en pulgadas (1 pulgada=2.54 cm) y pies (1 pie=12
pulgadas), a partir de la altura en centímetros, que se introduce por el teclado.
Inicio
1- IMPRIMIR 'Introduce la altura en centimetros: '
2- LEER: altura
3- CALCULAR pulgadas=altura=2:54
4- CALCULAR pies=pulgadas=12
5- IMPRIMIR 'La altura en pulgadas es: ', pulgadas
6- IMPRIMIR 'La altura en pies es : ', pies
Fin
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
El uso de diagramas de flujo como herramienta de
programación tiene beneficios que resumidamente se
detallan:
Rápida comprensión de las relaciones
Se pueden usar como modelos de trabajo para el diseño de
nuevos programas
Documentación adecuada de los programas
Produce una codificación eficaz en los programas
Depuración y pruebas ordenadas de programas
Fácil de traducir a cualquier lenguaje de programación.
RepresenaelFinyComienzodeldiagrama
Entrada/salida-Cualquiertipodeintroduccióndedatosenlamemoriadesdelos
periféricosdeentradaoregistrodelainformaciónprocesadaenunperiféricode
salida(nointeresaelsoporte)
Operaciónoproceso-accionesarealizar(sumardosnúmeros,calcularraíz
cuadrada,asignaciones,etc.-
Subrutina-llamadaaunsubprogramaqueesunmóduloindependientedel
programaprincipalquerealizaunadeterminadatareayregresaalasiguiente
instruccióndedondefuellamada.
Decisión-operacioneslógicasodecompraciónentredatosyenfuncióndel
resultadodeterminacualdelosdosdistintoscaminosalternativosdelprogramase
debeseguir.NormalmentetienedosrespuestasSIoNO
Conector-enlazadospartescualesquieradeldiagramamedianteunconectorde
salidayotrodeentrada.Siempredentrodelamismapágina
LíneadeFLujo-indicaelsentidodelaejecucióndelasoperaciones
Conector-idemalconectoranteriorperousandodistitnaspáginas
Teclado-introducciónmanualdedatosdesdeelteclado
Impresora-salidadedatosenformaimpresa
DiscoMagnético-paralecturaograbacióndedatos
Pantalla-Entrada/Salidadedatosporpantalla
? NoSi
CintaMagnética-paralecturaograbacióndedatos
Disqueteodiscoflexible-paralecturaograbacióndedatos
CD-DiscoCompacto-paralecturaograbacióndedatos
SIMBOLOS FUNCI ON
INTRODUCCION A LOS ALGORITMOS
SSiímbolos para representar los algoritmos
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
ESTRUCTURAS BASICAS DE SECUENCIA
Iteración o Repetitiva
Permite la selección entre dos grupos de acciones dependiendo
de que una determinada condición se cumpla o no.
Estas estructuras se utilizan para tomar decisiones lógicas; por
ello recibe también el nombre de estructuras de decisión o
alternativas o condicional.
Las condiciones que se especifican usan expresiones lógicas y
usan la figura geométrica en forma de rombo. Estas estructuras
pueden ser: Simples o dobles.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Estructura de elección entre varios casos
Este tipo de estructura permite decidir entre varios caminos
posibles, en función del valor que tome una determinada
instrucción.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Iteración o Repetitiva
Permite repetir una o varias instrucciones un número
determinado de veces que vendrá determinado por una
condición. Esta condición se conoce como condición de
salida.
A estos tipos de estructuras se las conoce también con el
nombre de bucles o rulos y al hecho de repetir la ejecución
de acciones se llama iteración.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Iteración o Repetitiva
HACER MIENTRAS: Se caracteriza porque la condición de
salida del bucle está situada al comienzo del mismo, es decir
las acciones la hace mientras se cumple determinada
condición.
Cuando se ejecuta una estructura de este tipo, lo que primero
se hace es evaluar la condición, si la misma es falsa no se
realiza ninguna acción. Si la condición resulta verdadera
entonces se ejecuta el cuerpo del bucle (acciones de la
Figura). Este mecanismo se repite mientras la condición sea
verdadera.
Condicion
Si
No
Acciones
Se hace notar que en este tipo de estructura
las acciones pueden no ejecutarse ninguna
vez.
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Iteración o Repetitiva
HACER HASTA: Se caracteriza porque la condición que
controla la realización de las acciones del bucle está al final
del mismo. En este tipo de iteración las acciones se repiten
mientras la condición sea falsa, lo opuesto a la estructura
hacer mientras.
Este tipo de bucle se usa para situaciones en las que se desea
que un conjunto de instrucciones se ejecute al menos una vez
antes de comprobar la condición de iteración. La figura
muestra la gráfica correspondiente.
Condicion No
Acciones
SI
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
5.3.1 Estructuras Básicas
Secuencia
Alternativa o Selectiva
Iteración o Repetitiva
Se puntualizan algunas diferencias entre estas dos
estructuras:
●
La estructura mientras termina cuando la condición es falsa,
en cambio la estructura hasta termina cuando la condición es
verdadera.
●
En la estructura hasta el cuerpo del bucle se ejecuta siempre
al menos una vez, en cambio en la estructura mientras
permite que el cuerpo del bucle nunca se ejecute.
5.3 Tecnicas de construccion de diagramas
Condicion
Si
No
Acciones
Condicion No
Acciones
SI
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Para confeccionar un diagrama de flujo, es aconsejable
respetar las siguientes reglas:
●
Todo diagrama de flujo debe indicar claramente donde
comienza (INICIO o COMENZAR) y donde termina (FIN o
PARAR).
●
El orden en que deben escribirse los símbolos es de arriba
abajo y de izquierda a derecha.
●
Es aconsejable emplear un símbolo para cada acción.
●
Dentro de los símbolos no especificar instrucciones propias
de algún lenguaje de programación.
●
La secuencia se indica mediante flechas o líneas de conexión
(horizontales / verticales), las cuales deben ser siempre
rectas, no se deben cruzar ni deben estar inclinadas.
Normas para su representación
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
●
A todos los símbolos (excepto al INICIO), les debe llegar una
línea de conexión.
●
De todos los símbolos, excepto FIN y el de DECISIÓN, debe
salir una sola línea de conexión.
●
Es aconsejable usar conectores cuando las líneas de conexión
entre operaciones no adyacentes son muy largas, pero hay que
tener en cuenta que el uso exagerado de conectores dificulta el
entendimiento.
●
Cuando trabajamos con operaciones lógicas recurrir
preferentemente a la lógica positiva antes que a la lógica
negativa. Es más claro decir si A = B, en vez de: si no es A <>
B
●
El diagrama de flujo deberá ser lo mas claro posible de forma
tal que cualquier otro programador pueda seguirlo o usarlo con
total facilidad de entendimiento.
●
El diagrama de flujo en conjunto debe guardar una cierta
simetría.
Normas para su representación
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Necesitamos hacer un programa que multiplique dos
números enteros.
Sabemos que “5 x 3 = 15″ es lo mismo que “5 + 5 + 5 = 15”.
Variables
●
multiplicando: entero (nos indica el número que vamos a sumar)
●
multiplicador: entero (nos indica el número de veces que lo vamos a
sumar)
●
resultado: entero (en esta variable asignaremos el resultado)
●
indice: entero (nos indicara el número de veces que el número se ha
sumado)
Ejemplo
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Necesitamos hacer un programa que multiplique dos
números enteros.
Algoritmo
1) Asignamos el número 5 a multiplicando
2) Asignamos el número 3 a multiplicador
3) Asignamos el número 0 a resultado
4) Asignamos el número 0 a indice
5) Sumamos multiplicando y resultado
6) Asignamos a resultado la suma
7) Incrementamos 1 a indice
8) Mientras indice sea menor a multiplicador regresamos al paso
5 de lo contrario continua
9) Muestra el resultado
10) Finalizar
Tenemos que inicializar cada variable de nuestro algoritmo, como se muestra en los
primeros cuatro pasos.
Ejemplo
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Necesitamos hacer un programa que multiplique dos
números enteros.
El siguiente paso es…
Prueba de escritorio
La prueba de escritorio es la ejecución manual de nuestro algorítmo
Ponemos a prueba nuestro algoritmo y nos mostrara si tenemos
errores (por lo que tendremos que modificar el algoritmo) o si esta
bien diseñado. Básicamente es el registro de las variables.
Siguiendo paso a paso nuestro algoritmo, obtendremos la siguiente
tabla.
Ejemplo
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Necesitamos hacer un programa que multiplique dos
números enteros.
Multiplicado 5
Multiplicador 3
Resultado 0 5 10 15
Indice 0 1 2 3
Vemos que el ultimo registro de la variable resultado, es 15, por lo que
nuestro algoritmo esta funcionando correctamente. Podemos probar con
otros número.
Ejemplo
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Necesitamos hacer un programa que multiplique dos
números enteros.
Diagramas de flujo
Una vez que hemos probado muestro algoritmo con la prueba de
escritorio y el resultado es el correcto, podemos seguir a diseñar el
diagrama de flujo.
Cada paso de nuestro algoritmo en un procedimiento y se representan
con un rectángulo. (Podemos agrupar varios procedimientos en un solo
rectángulo, pero no es lo indicado)
Cada condición como el paso número 8 se representa con un rombo.
Este será el diagrama de flujo de nuestro algoritmo.
Ejemplo
INTRODUCCION A LOS ALGORITMOS
Diagrama de Flujo
Necesitamos hacer un programa que multiplique dos
números enteros.
1. Inicio
2. multiplicando = 5
3. multiplicador = 3
4. resultado = 0
5. indice = 0
6. do
7. resultado = resultado + multiplicando
8. indice = indice + 1
9. mientras indice < multiplicador
10. imprime resultado
11. finalizar
Ejemplo
Un programa lo podemos dividir en
bloques, por ejemplo; de la línea 6 a la 9
es un bloque, y para identificar cada
bloque en el código lo podemos escribir
después de unos espacios y así identificar
ciertos procesos. Esto nos sirve para en
códigos muy grandes.

Más contenido relacionado

La actualidad más candente

Apuntes programacion basica
Apuntes programacion basicaApuntes programacion basica
Apuntes programacion basica
marigelcontreras
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivas
martell024
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
marigelcontreras
 
Estructuras de seleccion
Estructuras de seleccionEstructuras de seleccion
Estructuras de seleccion
Clariza
 
Introducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En CIntroducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En C
painni
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
marigelcontreras
 

La actualidad más candente (20)

Apuntes programacion basica
Apuntes programacion basicaApuntes programacion basica
Apuntes programacion basica
 
algoritmos
algoritmosalgoritmos
algoritmos
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivas
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Estructura selectiva
Estructura selectivaEstructura selectiva
Estructura selectiva
 
Estructuras de seleccion
Estructuras de seleccionEstructuras de seleccion
Estructuras de seleccion
 
Estructuras de control algoritmos
Estructuras de control algoritmosEstructuras de control algoritmos
Estructuras de control algoritmos
 
Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
 
Estructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigoEstructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigo
 
Clase 2 diagramas de flujo
Clase 2 diagramas de flujoClase 2 diagramas de flujo
Clase 2 diagramas de flujo
 
Introducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En CIntroducción A Las Estructuras De Seleccion En C
Introducción A Las Estructuras De Seleccion En C
 
fTópicos 2.0
fTópicos 2.0fTópicos 2.0
fTópicos 2.0
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Presentacion eficiencia de los algoritmos
Presentacion eficiencia de los algoritmosPresentacion eficiencia de los algoritmos
Presentacion eficiencia de los algoritmos
 
Unidad I Algoritmos
Unidad  I    AlgoritmosUnidad  I    Algoritmos
Unidad I Algoritmos
 
Estructuras repetitivas for y while
Estructuras repetitivas for y whileEstructuras repetitivas for y while
Estructuras repetitivas for y while
 
Guía Práctica de Diagramas de Flujo
Guía Práctica de Diagramas de FlujoGuía Práctica de Diagramas de Flujo
Guía Práctica de Diagramas de Flujo
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 

Destacado

Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
Jeane Marie
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
Ronay Garcia
 
Algoritmos, pseudocodigos y diagramas de flujo
Algoritmos, pseudocodigos y diagramas de flujoAlgoritmos, pseudocodigos y diagramas de flujo
Algoritmos, pseudocodigos y diagramas de flujo
Maria Valenzuela
 
Presentación trabajo programación
Presentación trabajo programaciónPresentación trabajo programación
Presentación trabajo programación
ionurrutia
 
Informatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en AlgoritmosInformatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en Algoritmos
Gabriel Ruiz
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
d3m3nt3
 
Lección 1 Introducción a los Lenguajes de Programación
Lección 1   Introducción a los Lenguajes de ProgramaciónLección 1   Introducción a los Lenguajes de Programación
Lección 1 Introducción a los Lenguajes de Programación
ocasas
 

Destacado (20)

Algoritmos
Algoritmos Algoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 
50 problemas
50 problemas50 problemas
50 problemas
 
computacion (algoritmos)
computacion  (algoritmos)computacion  (algoritmos)
computacion (algoritmos)
 
Depuradores
DepuradoresDepuradores
Depuradores
 
Los algoritmos 1
Los algoritmos 1Los algoritmos 1
Los algoritmos 1
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacion
 
Lenguaje De Alto Nivel I Bim
Lenguaje De Alto Nivel I BimLenguaje De Alto Nivel I Bim
Lenguaje De Alto Nivel I Bim
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Algoritmos
Algoritmos Algoritmos
Algoritmos
 
Practica1 lenguajes de programacion. clasificacion.
Practica1 lenguajes de programacion. clasificacion.Practica1 lenguajes de programacion. clasificacion.
Practica1 lenguajes de programacion. clasificacion.
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Algoritmos, pseudocodigos y diagramas de flujo
Algoritmos, pseudocodigos y diagramas de flujoAlgoritmos, pseudocodigos y diagramas de flujo
Algoritmos, pseudocodigos y diagramas de flujo
 
Presentación trabajo programación
Presentación trabajo programaciónPresentación trabajo programación
Presentación trabajo programación
 
Algoritmos cotidianos
Algoritmos cotidianosAlgoritmos cotidianos
Algoritmos cotidianos
 
Informatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en AlgoritmosInformatica II - 1 Terminologia Usada en Algoritmos
Informatica II - 1 Terminologia Usada en Algoritmos
 
Clasificación de los lenguajes de programación
Clasificación de los lenguajes de programaciónClasificación de los lenguajes de programación
Clasificación de los lenguajes de programación
 
Lección 1 Introducción a los Lenguajes de Programación
Lección 1   Introducción a los Lenguajes de ProgramaciónLección 1   Introducción a los Lenguajes de Programación
Lección 1 Introducción a los Lenguajes de Programación
 
Escala farenheit
Escala farenheitEscala farenheit
Escala farenheit
 

Similar a REPRESENTACION-EJEMPLO ALGORITMOS

INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓNINTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
DianaaLSRojas
 
Bloque 1 guia informatica II
Bloque 1 guia informatica IIBloque 1 guia informatica II
Bloque 1 guia informatica II
Noe Altamirano
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
Noé AG
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
marigelcontreras
 
Material de Clases TP 03 - Programación Computacional
Material de Clases TP 03 - Programación ComputacionalMaterial de Clases TP 03 - Programación Computacional
Material de Clases TP 03 - Programación Computacional
mnllorente
 

Similar a REPRESENTACION-EJEMPLO ALGORITMOS (20)

INTRODCCION A LA DIAGRAMAS DE FLUJO.ppt
INTRODCCION A LA DIAGRAMAS DE FLUJO.pptINTRODCCION A LA DIAGRAMAS DE FLUJO.ppt
INTRODCCION A LA DIAGRAMAS DE FLUJO.ppt
 
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓNINTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
 
Diagramacion
DiagramacionDiagramacion
Diagramacion
 
Bloque 1 guia informatica II
Bloque 1 guia informatica IIBloque 1 guia informatica II
Bloque 1 guia informatica II
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica ii
 
Fp04
Fp04Fp04
Fp04
 
Tema5.ppt
Tema5.pptTema5.ppt
Tema5.ppt
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
 
diagramas5.ppt
diagramas5.pptdiagramas5.ppt
diagramas5.ppt
 
Tema5- Diagramas de Flujo y los algoritmos
Tema5- Diagramas de Flujo y los algoritmosTema5- Diagramas de Flujo y los algoritmos
Tema5- Diagramas de Flujo y los algoritmos
 
Tema5.ppt
Tema5.pptTema5.ppt
Tema5.ppt
 
Diagramas de Flujo
Diagramas de FlujoDiagramas de Flujo
Diagramas de Flujo
 
diagramas de Flujo.ppt
diagramas de Flujo.pptdiagramas de Flujo.ppt
diagramas de Flujo.ppt
 
diagramas de flujo
diagramas de flujodiagramas de flujo
diagramas de flujo
 
Estructuras iterativas
Estructuras iterativasEstructuras iterativas
Estructuras iterativas
 
Estructuras iterativas
Estructuras iterativasEstructuras iterativas
Estructuras iterativas
 
Estructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestosEstructuras iterativas y ejemplos propuestos
Estructuras iterativas y ejemplos propuestos
 
Material de Clases TP 03 - Programación Computacional
Material de Clases TP 03 - Programación ComputacionalMaterial de Clases TP 03 - Programación Computacional
Material de Clases TP 03 - Programación Computacional
 
Algoritmo diagrama de_flujo
Algoritmo diagrama de_flujoAlgoritmo diagrama de_flujo
Algoritmo diagrama de_flujo
 
Secuencial
SecuencialSecuencial
Secuencial
 

Último

sistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstsistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gst
DavidRojas870673
 
INFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdfINFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdf
octaviosalazar18
 
Tipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplosTipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplos
andersonsubero28
 

Último (20)

libro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operacioneslibro de ingeniería de petróleos y operaciones
libro de ingeniería de petróleos y operaciones
 
TAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientosTAIICHI OHNO, historia, obras, reconocimientos
TAIICHI OHNO, historia, obras, reconocimientos
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
sistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gstsistema de CLORACIÓN DE AGUA POTABLE gst
sistema de CLORACIÓN DE AGUA POTABLE gst
 
Análisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECOAnálisis de Costos y Presupuestos CAPECO
Análisis de Costos y Presupuestos CAPECO
 
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
Resistencia-a-los-antimicrobianos--laboratorio-al-cuidado-del-paciente_Marcel...
 
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVOESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
ESPECIFICACIONES TECNICAS COMPLEJO DEPORTIVO
 
INFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdfINFORME de pregrado ingenieria de vias.pdf
INFORME de pregrado ingenieria de vias.pdf
 
Presentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potablePresentación de Redes de alcantarillado y agua potable
Presentación de Redes de alcantarillado y agua potable
 
PostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCDPostgreSQL on Kubernetes Using GitOps and ArgoCD
PostgreSQL on Kubernetes Using GitOps and ArgoCD
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
SESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdf
SESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdfSESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdf
SESION 02-DENSIDAD DE POBLACION Y DEMANDA DE AGUA (19-03-2024).pdf
 
FUNCION DE ESTADO EN LA TERMODINAMICA.pdf
FUNCION DE ESTADO EN LA TERMODINAMICA.pdfFUNCION DE ESTADO EN LA TERMODINAMICA.pdf
FUNCION DE ESTADO EN LA TERMODINAMICA.pdf
 
[1LLF] UNIDADES, MAGNITUDES FÍSICAS Y VECTORES.pdf
[1LLF] UNIDADES, MAGNITUDES FÍSICAS Y VECTORES.pdf[1LLF] UNIDADES, MAGNITUDES FÍSICAS Y VECTORES.pdf
[1LLF] UNIDADES, MAGNITUDES FÍSICAS Y VECTORES.pdf
 
Tipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplosTipos de suelo y su clasificación y ejemplos
Tipos de suelo y su clasificación y ejemplos
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx422382393-Curso-de-Tableros-Electricos.pptx
422382393-Curso-de-Tableros-Electricos.pptx
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 

REPRESENTACION-EJEMPLO ALGORITMOS

  • 1. INTRODUCCION A LOS ALGORITMOS Diagramas de flujo Representacion de los algoritmos
  • 2. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Diagramas de Flujo. Representación simbólica. Símbolos utilizados. Convenciones. Técnicas de construcción de diagramas. Estructuras básicas. Normas para su representación. Ejemplo.
  • 3. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Tanto en la fase de análisis del problema como durante el diseño del algoritmo, se plantea la necesidad de representar claramente el flujo de operaciones que se han de realizar para su resolución y el orden en que estas operaciones deber ser ejecutadas. Una vez que el algoritmo esté diseñado se debe proceder a representarlo mediante algún método de programación, siendo los más usuales: diagramas de flujo, pseudocódigo, diagramas N-S o Tablas de decisión. Esta representación independiza al algoritmo del lenguaje de programación elegido, permitiendo de esta manera que pueda ser codificado indistintamente en cualquier lenguaje.
  • 4. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Las dos herramientas mas utilizadas comunmente para describir algoritmos son: Diagramas de Flujo: son representaciones gráficas de secuencias de pasos a realizar. Cada operacion se representa mediante un símbolo normalizado el Instituto Norteamericano de Normalizacion (ANSI - American National Standars Institute). Las líneas de flujo indican el orden de ejecución. Los diagramas de flujo suelen ser usados solo para representar algoritmos pequeños, ya que abarcan mucho espacio.
  • 5. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Pseudocódigos: describen un algoritmo de forma similar a un lenguaje de programacióon pero sin su rigidez, de forma más parecida al lenguaje natural. Presentan la ventaja de ser más compactos que los diagramas de flujo, más fáciles de escribir para las instrucciones complejas y más fáciles de transferir a un lenguaje de programación. El pseudocódigo no está regido por ningún estándar. Algunas palabras usadas son LEER/IMPRIMIR para representar las acciones de lectura de datos y salida de datos. Calcular una altura en pulgadas (1 pulgada=2.54 cm) y pies (1 pie=12 pulgadas), a partir de la altura en centímetros, que se introduce por el teclado. Inicio 1- IMPRIMIR 'Introduce la altura en centimetros: ' 2- LEER: altura 3- CALCULAR pulgadas=altura=2:54 4- CALCULAR pies=pulgadas=12 5- IMPRIMIR 'La altura en pulgadas es: ', pulgadas 6- IMPRIMIR 'La altura en pies es : ', pies Fin
  • 6. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo El uso de diagramas de flujo como herramienta de programación tiene beneficios que resumidamente se detallan: Rápida comprensión de las relaciones Se pueden usar como modelos de trabajo para el diseño de nuevos programas Documentación adecuada de los programas Produce una codificación eficaz en los programas Depuración y pruebas ordenadas de programas Fácil de traducir a cualquier lenguaje de programación.
  • 7. RepresenaelFinyComienzodeldiagrama Entrada/salida-Cualquiertipodeintroduccióndedatosenlamemoriadesdelos periféricosdeentradaoregistrodelainformaciónprocesadaenunperiféricode salida(nointeresaelsoporte) Operaciónoproceso-accionesarealizar(sumardosnúmeros,calcularraíz cuadrada,asignaciones,etc.- Subrutina-llamadaaunsubprogramaqueesunmóduloindependientedel programaprincipalquerealizaunadeterminadatareayregresaalasiguiente instruccióndedondefuellamada. Decisión-operacioneslógicasodecompraciónentredatosyenfuncióndel resultadodeterminacualdelosdosdistintoscaminosalternativosdelprogramase debeseguir.NormalmentetienedosrespuestasSIoNO Conector-enlazadospartescualesquieradeldiagramamedianteunconectorde salidayotrodeentrada.Siempredentrodelamismapágina LíneadeFLujo-indicaelsentidodelaejecucióndelasoperaciones Conector-idemalconectoranteriorperousandodistitnaspáginas Teclado-introducciónmanualdedatosdesdeelteclado Impresora-salidadedatosenformaimpresa DiscoMagnético-paralecturaograbacióndedatos Pantalla-Entrada/Salidadedatosporpantalla ? NoSi CintaMagnética-paralecturaograbacióndedatos Disqueteodiscoflexible-paralecturaograbacióndedatos CD-DiscoCompacto-paralecturaograbacióndedatos SIMBOLOS FUNCI ON INTRODUCCION A LOS ALGORITMOS SSiímbolos para representar los algoritmos
  • 8. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo ESTRUCTURAS BASICAS DE SECUENCIA Iteración o Repetitiva Permite la selección entre dos grupos de acciones dependiendo de que una determinada condición se cumpla o no. Estas estructuras se utilizan para tomar decisiones lógicas; por ello recibe también el nombre de estructuras de decisión o alternativas o condicional. Las condiciones que se especifican usan expresiones lógicas y usan la figura geométrica en forma de rombo. Estas estructuras pueden ser: Simples o dobles.
  • 9. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Estructura de elección entre varios casos Este tipo de estructura permite decidir entre varios caminos posibles, en función del valor que tome una determinada instrucción.
  • 10. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Iteración o Repetitiva Permite repetir una o varias instrucciones un número determinado de veces que vendrá determinado por una condición. Esta condición se conoce como condición de salida. A estos tipos de estructuras se las conoce también con el nombre de bucles o rulos y al hecho de repetir la ejecución de acciones se llama iteración.
  • 11. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Iteración o Repetitiva HACER MIENTRAS: Se caracteriza porque la condición de salida del bucle está situada al comienzo del mismo, es decir las acciones la hace mientras se cumple determinada condición. Cuando se ejecuta una estructura de este tipo, lo que primero se hace es evaluar la condición, si la misma es falsa no se realiza ninguna acción. Si la condición resulta verdadera entonces se ejecuta el cuerpo del bucle (acciones de la Figura). Este mecanismo se repite mientras la condición sea verdadera. Condicion Si No Acciones Se hace notar que en este tipo de estructura las acciones pueden no ejecutarse ninguna vez.
  • 12. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Iteración o Repetitiva HACER HASTA: Se caracteriza porque la condición que controla la realización de las acciones del bucle está al final del mismo. En este tipo de iteración las acciones se repiten mientras la condición sea falsa, lo opuesto a la estructura hacer mientras. Este tipo de bucle se usa para situaciones en las que se desea que un conjunto de instrucciones se ejecute al menos una vez antes de comprobar la condición de iteración. La figura muestra la gráfica correspondiente. Condicion No Acciones SI
  • 13. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo 5.3.1 Estructuras Básicas Secuencia Alternativa o Selectiva Iteración o Repetitiva Se puntualizan algunas diferencias entre estas dos estructuras: ● La estructura mientras termina cuando la condición es falsa, en cambio la estructura hasta termina cuando la condición es verdadera. ● En la estructura hasta el cuerpo del bucle se ejecuta siempre al menos una vez, en cambio en la estructura mientras permite que el cuerpo del bucle nunca se ejecute. 5.3 Tecnicas de construccion de diagramas Condicion Si No Acciones Condicion No Acciones SI
  • 14. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Para confeccionar un diagrama de flujo, es aconsejable respetar las siguientes reglas: ● Todo diagrama de flujo debe indicar claramente donde comienza (INICIO o COMENZAR) y donde termina (FIN o PARAR). ● El orden en que deben escribirse los símbolos es de arriba abajo y de izquierda a derecha. ● Es aconsejable emplear un símbolo para cada acción. ● Dentro de los símbolos no especificar instrucciones propias de algún lenguaje de programación. ● La secuencia se indica mediante flechas o líneas de conexión (horizontales / verticales), las cuales deben ser siempre rectas, no se deben cruzar ni deben estar inclinadas. Normas para su representación
  • 15. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo ● A todos los símbolos (excepto al INICIO), les debe llegar una línea de conexión. ● De todos los símbolos, excepto FIN y el de DECISIÓN, debe salir una sola línea de conexión. ● Es aconsejable usar conectores cuando las líneas de conexión entre operaciones no adyacentes son muy largas, pero hay que tener en cuenta que el uso exagerado de conectores dificulta el entendimiento. ● Cuando trabajamos con operaciones lógicas recurrir preferentemente a la lógica positiva antes que a la lógica negativa. Es más claro decir si A = B, en vez de: si no es A <> B ● El diagrama de flujo deberá ser lo mas claro posible de forma tal que cualquier otro programador pueda seguirlo o usarlo con total facilidad de entendimiento. ● El diagrama de flujo en conjunto debe guardar una cierta simetría. Normas para su representación
  • 16. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Necesitamos hacer un programa que multiplique dos números enteros. Sabemos que “5 x 3 = 15″ es lo mismo que “5 + 5 + 5 = 15”. Variables ● multiplicando: entero (nos indica el número que vamos a sumar) ● multiplicador: entero (nos indica el número de veces que lo vamos a sumar) ● resultado: entero (en esta variable asignaremos el resultado) ● indice: entero (nos indicara el número de veces que el número se ha sumado) Ejemplo
  • 17. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Necesitamos hacer un programa que multiplique dos números enteros. Algoritmo 1) Asignamos el número 5 a multiplicando 2) Asignamos el número 3 a multiplicador 3) Asignamos el número 0 a resultado 4) Asignamos el número 0 a indice 5) Sumamos multiplicando y resultado 6) Asignamos a resultado la suma 7) Incrementamos 1 a indice 8) Mientras indice sea menor a multiplicador regresamos al paso 5 de lo contrario continua 9) Muestra el resultado 10) Finalizar Tenemos que inicializar cada variable de nuestro algoritmo, como se muestra en los primeros cuatro pasos. Ejemplo
  • 18. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Necesitamos hacer un programa que multiplique dos números enteros. El siguiente paso es… Prueba de escritorio La prueba de escritorio es la ejecución manual de nuestro algorítmo Ponemos a prueba nuestro algoritmo y nos mostrara si tenemos errores (por lo que tendremos que modificar el algoritmo) o si esta bien diseñado. Básicamente es el registro de las variables. Siguiendo paso a paso nuestro algoritmo, obtendremos la siguiente tabla. Ejemplo
  • 19. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Necesitamos hacer un programa que multiplique dos números enteros. Multiplicado 5 Multiplicador 3 Resultado 0 5 10 15 Indice 0 1 2 3 Vemos que el ultimo registro de la variable resultado, es 15, por lo que nuestro algoritmo esta funcionando correctamente. Podemos probar con otros número. Ejemplo
  • 20. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Necesitamos hacer un programa que multiplique dos números enteros. Diagramas de flujo Una vez que hemos probado muestro algoritmo con la prueba de escritorio y el resultado es el correcto, podemos seguir a diseñar el diagrama de flujo. Cada paso de nuestro algoritmo en un procedimiento y se representan con un rectángulo. (Podemos agrupar varios procedimientos en un solo rectángulo, pero no es lo indicado) Cada condición como el paso número 8 se representa con un rombo. Este será el diagrama de flujo de nuestro algoritmo. Ejemplo
  • 21. INTRODUCCION A LOS ALGORITMOS Diagrama de Flujo Necesitamos hacer un programa que multiplique dos números enteros. 1. Inicio 2. multiplicando = 5 3. multiplicador = 3 4. resultado = 0 5. indice = 0 6. do 7. resultado = resultado + multiplicando 8. indice = indice + 1 9. mientras indice < multiplicador 10. imprime resultado 11. finalizar Ejemplo Un programa lo podemos dividir en bloques, por ejemplo; de la línea 6 a la 9 es un bloque, y para identificar cada bloque en el código lo podemos escribir después de unos espacios y así identificar ciertos procesos. Esto nos sirve para en códigos muy grandes.