13 - Algoritmos PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 31

Algoritmos:

Pseudocódigo y Diagramas de Flujo

Informática Aplicada
Índice

• Introducción
• Objetivos
• Porqué se programa
• Lenguajes de Programación
– Clasificación
• Algoritmos
– Características
– Tipos
• Pseudocódigo
• Diagrama de Flujo
• Bibliografía

2
Introducción

• En esta sesión se tratarán los conceptos para la resolución


de problemas mediante la utilización de un mecanismo de
solución como son los Algoritmos.
• Se utilizarán como herramientas a los Diagramas de Flujo y
Pseudocódigos para lograr crear soluciones lógicas y bien
definidas ante la presencia de un problema.

3
Objetivos

• Definir los conceptos de programa y algoritmo.


• Definir y crear algoritmos para resolver problemas.
• Resolver problemas usando Diagramas de Flujo y
pseudocódigos.

4
¿Porqué se programa?
• La principal razón para que las personas aprendan lenguajes
y técnicas de programación es utilizar la computadora como
una herramienta para resolver problemas. La resolución de
un problema exige al menos los siguientes pasos:

– Definición o análisis del problema


– Diseño del algoritmo
– Transformación del algoritmo en un programa
– Ejecución y validación del programa

5
Lenguajes de Programación
• Un lenguaje de programación es un conjunto de símbolos,
caracteres y reglas que le permiten a las personas
comunicarse con la computadora.
• Los lenguajes de programación tienen un conjunto de
instrucciones que nos permiten realizar operaciones de
entrada/salida, cálculo, manipulación de textos,
lógica/comparación y almacenamiento/recuperación.

6
Clasificación de los Lenguajes
de Programación
• Los lenguajes de programación se clasifican en:
– Lenguaje Máquina: Son aquellos cuyas
instrucciones son directamente entendidas por la
computadora y no necesitan de una traducción
posterior, por lo que el CPU puede comprender y
ejecutar el programa. Las instrucciones en lenguaje
máquina se expresan en lenguaje binario: 0 y 1.
– Lenguaje de Bajo Nivel (Ensamblador): En este
lenguaje las instrucciones se escriben en códigos
alfabéticos conocidos como mnemotécnicos para
las operaciones y direcciones simbólicas.
– Lenguaje de Alto Nivel: Son aquellos donde las
instrucciones o sentencias son escritas con
palabras similares al lenguaje humano (natural), que
en general es en inglés, por lo que facilita la
escritura y comprensión del programa.

7
Concepto de Algoritmo

• En términos generales, un Algoritmo es el método para


resolver un determinado problema.
• A quien ejecuta las instrucciones definidas para conseguir la
tarea, se le llama: Procesador.
• Dicho esto, es lógico decir que existirán algoritmos que
describen toda clase de procesos, como por ejemplo: una
receta de cocina, las partituras musicales, etc.
• Entonces, un Procesador realiza un proceso ejecutando el
algoritmo correspondiente.

8
Secuencia del Algoritmo
• El siguiente diagrama representa de forma general, el
proceso para la resolución de problemas con la computadora.

9
Características de los
Algoritmos
• Las características más relevantes de los algoritmos son:
– Finito: Un algoritmo debe siempre terminar después de un número finito
de pasos.
– Definido: Cada paso de un algoritmo debe ser definido en forma precisa,
estableciendo las acciones que se van a efectuar de manera clara y
rigurosamente en cada paso.
– Entradas: Un algoritmo debe tener cero o más entradas. Es decir,
cantidades que se entregan inicialmente al algoritmo antes de su
ejecución.
– Salidas: Un algoritmo tiene una o más salidas, es decir, cantidades que
tienen una relación específica respecto a las entradas.
– Efectivo: Significa que todas las operaciones del algoritmo deben ser
llevadas a cabo de forma exacta, sin ambigüedades.

10
Lenguajes algorítmicos
• Un lenguaje algorítmico es una serie de símbolos y reglas
que se utilizan para describir de manera explícita un proceso.
• Los tipos de lenguajes algorítmicos son:
– Gráficos: es la representación
gráfica de las operaciones que
realiza un algoritmo (diagrama
de flujo).

– No Gráficos: representa de
Inicio
forma descriptiva las Edad: entero
operaciones que debe realizar Escribir ‘‘Cuál es tu edad’’
Leer Edad
un algoritmo (pseudocódigo). Si Edad>=18 entonces
Escribir ‘‘Eres
mayor de edad’’
FinSi
Fin 11
Pseudocódigo

• Pseudocódigo es la descripción de un algoritmo que asemeja


a un lenguaje de programación pero con algunas
convenciones del lenguaje natural.
• Pseudo o seudo, significa “falso”, “imitación” y Código se
refiere a las instrucciones escritas en el lenguaje de
programación.
• Pseudocódigo no es realmente un código sino una imitación y
una versión abreviada de instrucciones reales para la
computadora.

12
Pseudocódigos: Operadores
aritméticos

• Los símbolos más usados para operaciones aritméticas son conocidos


como Operadores Aritméticos:

+ suma
- resta
* multiplicación
/ división
\ división entera (cociente entero), también se representa por div
mod resto división entera
^ exponenciación (potenciación)

13
Pseudocódigos: Palabras claves
• En los pseudocódigos se utilizan palabras claves, y estas
pueden estar en español o en inglés. Se recomienda utilizar
durante el desarrollo del pseudocódigo el mismo idioma.

Español Inglés
Inicio Begin
Fin End
Leer Read/Input
Escribir Write/Print
Si-entonces If-then
Desde For
Mientras While
Repetir Repeat
Hasta_que Until
14
Estructura básica y ejemplo
de un Pseudocódigo
• A continuación se muestra el esquema de un
pseudocódigo:

Algoritmo <nombre del algoritmo>


Definición de constantes
Definición de variables
Inicio

Sentencia 1
Sentencia 2
.
.
.
Sentencia n

Fin

15
Características del
Pseudocódigo
• Los Pseudocódigos se caracterizan por:

– Mantener una identación o sangría adecuada para la fácil


identificación de los elementos que lo componen.
– Permitir la declaración de los datos (constantes y/o variables)
manipulados por el algoritmo.
– Disponer de un conjunto pequeño y completo de palabras reservadas
que permitan expresar: las acciones elementales, las primitivas de
composición de acciones, y la definición de acciones con nombre.

16
Ventajas de Pseudocódigo vs.
Diagrama de Flujo

• Ocupa menos espacio en una hoja de papel.


• Permite representar en forma fácil operaciones
repetitivas complejas.
• Es muy fácil pasar de Pseudocódigo a un programa
en algún lenguaje de programación.
• Si se siguen las reglas se puede observar
claramente los niveles que tiene cada operación.

17
Diagrama de Flujo
• Los diagramas de flujo son descripciones gráficas de
algoritmos, usan símbolos conectados con flechas para
indicar la secuencia de instrucciones y están regidos por ISO
(International Standard Organization) y ANSI (American
National Standards Institute)
• Los diagramas de flujo son usados para representar
algoritmos pequeños, ya que abarcan mucho espacio y su
construcción es laboriosa.
• Por su facilidad de lectura son usados como introducción a
los algoritmos, descripción de un lenguaje y descripción de
procesos a personas ajenas a la computación.
• Un diagrama de flujo debe ilustrar gráficamente los pasos o
procesos a seguir para alcanzar la solución de un problema.
18
Símbolos y significado
• A continuación se muestran los símbolos convencionalmente
aceptados y más comunes:

Expresa el Inicio o Fin de un Conector para unir el flujo a


programa. otra parte del diagrama.

Expresa un Proceso: una operación


Conector de página.
algebraica o de asignación.
Entrada/Salida, representa cualquier
tipo de fuente de entrada o de Display, para mostrar datos.
salida.
Representa la toma de decisiones, Envía datos a la impresora
formula una pregunta.

Líneas de Flujo.

19
Reglas al trabajar con un
Diagrama de Flujo
• El sentido de un diagrama de flujo generalmente es de arriba hacia abajo.
• En un símbolo solo puede entrar una flecha de flujo, si varias líneas se
dirigen al mismo símbolo, se deben unir en una sola flecha.
• Las líneas de flujo no deben cruzarse; para evitar los cruces se utilizan los
conectores.
• De un símbolo, excepto en el de decisión, solo puede salir una línea de
flujo.
• Los símbolos Terminal, Conector dentro de página y Conector fuera de
página, solo pueden estar conectados al diagrama por una sola flecha, ya
que por su naturaleza es imposible que tenga una entrada y una de
salida.
• Los rombos de decisión tendrán siempre una sola flecha de entrada y dos
o tres flechas de salida según la cantidad de alternativas que se
presentan.
• Un diagrama de flujo debe estar complemente cerrado, teniendo una
continuidad de principio a fin, no pueden quedar flechas en el aire ni
símbolos sin conexión al diagrama, pues el flujo seria interrumpido.

20
Ejemplo de Diagrama de Flujo
• El siguiente Diagrama de Flujo tiene por objetivo encontrar la
suma de 2 números leídos por teclado y mostrar el resultado.

 Se lee el primer número y se guarda en A.

 Se lee el segundo número y se guarda en B.

 Se suma A y B y se almacena en C.

 Se muestra el resultado en C

21
Ejemplo 1
Calcular el promedio de 2
números
Algoritmo promedio
inicio
Entero: dato1, dato2, promedio
Escribir "Ing dato 1:"
Leer dato1
Escribir "Ing dato 2:"
Leer dato2
promedio=(dato1+dato2)/2
Escribir "El promedio es:" + promedio
fin

22
Ejemplo 2
Calcular el área de un
triangulo
Algoritmo promedio
inicio
Entero: base,altura,area
Escribir "Ing base:"
Leer base
Escribir "Ing altura:"
Leer altura
area=(base*altura)/2
Escribir "El area es:" + area
fin

23
PSEINT
• PSeInt es una herramienta para asistir a un
estudiante en sus primeros pasos en
programación. Mediante un simple e intuitivo
pseudolenguaje en español (complementado con
un editor de diagramas de flujo), le permite centrar
su atención en los conceptos fundamentales de la
algoritmia computacional, minimizando las
dificultades propias de un lenguaje y
proporcionando un entorno de trabajo con
numerosas ayudas y recursos didácticos.
PSEINT
PSEINT
DFD
DFD es un software diseñado para construir y
analizar Algoritmos. Usted puede crear diagramas de
flujo para la representación de algoritmos de
programación estructurada a partir de las
herramientas de edición que para este propósito
suministra el programa. Después de haber ingresado
el algoritmo representado por el diagrama, podrá
ejecutarlo, analizarlo y depurarlo en un entorno
interactivo diseñado para este fin. La interfaz grafica
de DFD, facilita en gran medida el trabajo con
diagramas ya que simula la representación estándar
27
de diagramas de flujo en hojas de papel.
DFD

28
Glosario

• Algoritmo: es un conjunto prescrito de instrucciones o reglas


bien definidas, ordenadas y finitas que permite realizar una
actividad mediante pasos sucesivos que no generen dudas a
quien deba realizar dicha actividad.
• Pseudocodigo: es una descripción de alto nivel compacta e
informal del principio operativo de un programa informático u
otro algoritmo.

29
Enlaces
• http://definicion.de/algoritmo/
• http://definicion.de/pseudocodigo/

30
Bibliografía
• http://definicion.de/algoritmo/
• http://definicion.de/pseudocodigo/

31

También podría gustarte