Sei sulla pagina 1di 27

Algoritmos

Es un conjunto de pasos
lógicos ordenados,
secuencialmente y finita,
escritos de tal forma que
permiten visualizar la
solución de un problema
determinado en un momento
específico.
ALGORITMO: Caracteríticas

CONCRETO LEGIBLE

EFICIENTE
FINITO DebeDebe
Debe
Debe realizar
estar
indicar
realizar las
bien
las un
Debe
Debeestar
tenerlibre
Debe
Debe generar
funciones el ser...
estructurado
orden
operaciones con
mismo
de
u un
terminar
deutilización
resultado errores.
siempreenquealgún
se
operaciones
mínimorealización
para
de supara
siga. fácilde
las
de
(Validado)
momento
recursos.
queentendimiento.
fue
cadacreado.
paso.

NO
DEFINIDO
AMBIGUO
PRECISO
Corresponden a losALGORITMO: Estructura
datos requeridos
Determinan
Conforma ella
para realizar grupo
el
organización
de instrucciones
algoritmo de las
(datos de
instrucciones
que realizan
entrada) que
las
y los datos
deben sergenerados
operaciones
que son con los Entrada
realizadas.
datos.
(datos de salida)

Procesos

Salida
ALGORITMO: Elementos
Es instrucciones
Las necesario
identificar
que se van que
a
Definición
datos se
realizar necesitan
deben estar
de variables y
ingresar,
bien cuales y
estructuradas
sirven
tener unde forma
orden constantes
auxiliar
lógico, y cuales
con se
el fin de
van a generar.
evitar Proceso
Salida
inconsistencias en Entrada Estructuras de
control
el resultado.

Cuerpo del algoritmo


ALGORITMO: Quienes pueden hacer un
algoritmo?

Toda persona,
implícitamente y
diariamente diseña y
realiza algoritmos, para dar
solución a situaciones
cotidianas de forma natural. Sin embargo el programador,
diseña el algoritmo conciente de
que al realizar cada paso
obtendrá la solución de un
problema específico.
ALGORITMO: Cómo se hace?
El no programador haría lo siguiente:

Buscar la página de cines en el


diario local y mirar si ve la película
Supongamos
anunciada. que mira
Si la ve anunciada
en qué cine la estan
deseamos ir dando
al ciney se
la va
a verla. Si no la ve anunciada,
película The Matrix, ¿cómo
espera a los estrenos de lasemana
que viene.procedemos?
ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de este otro
modo:
1 Buscar la página de cines en el diario
local, con fecha de hoy

Revisar la cartelera de arriba abajo y de izquierda


2 a derecha, buscando entre los títulos existentes.

3 Si se encuentra el título The Matrix, no seguir


buscando. Apuntar el nombre del cine, su dirección y
los horarios

Si no se encuentra el título en la cartelera, esperar


4
una semana y volver a empezar el proceso a partir
del punto 1 de esta lista.
ALGORITMO: Otro ejemplo

Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar la
llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg, volver
al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.
ALGORITMO: Requisitos
Seguir los pasos del algoritmo
Por ejemplo:
debe llevarnos
Si se requiere a lala resolución
hallar velocidad Debe Definirse del
del
deproblema.
un automóvil, es necesario, problema
Los algoritmos
Siempre
definir si laque se crean
seadebe
distancia para
posible
serelen
No
resolverdebemos
seguiremos
omitir
metros, kilómetros, etc y el
contexto
problemas.
personalmente
tiempo estará dado de nuestros
los enpasos
segundos de Debe estar dentro
algoritmos.
Es importante
nuestro
u horas, ya que junto
algoritmo
que al para
la velocidad de contexto
algoritmo,
comprobar
Es necesario
puede que son establecer
representarse en Km/h ó
describamos
efectivamente
mts/seg. claramente
correctos el y
lo que se necesita y
problema que
conducen éste nos permite
efectivamente a la Debe resolver el
dónde se debe comenzar.
resolver.esperada.
solución problema

Debe evitar la
ambigüedad
ALGORITMO: Técnicas de Diseño

Es una técnica de permite


Está diseño Top Down
descendente
dividir donde se en
el problema
realiza un refinamiento
pequeñas partes, a las Divide y vencerás
sucesivo,
cuales se que permite
les da solución
darleseparado,
por una organización
luego a se
las instrucciones,
integran en
las soluciones
formaresolver
para de módulos o
el problema
bloques.
principal.
ALGORITMO: Técnicas de Representación

Es una técnica que Diagrama de Flujo


permite
Está representar
técnica permite
gráficamente
representar lasel algoritmo Pseudocódigo
operaciones
mediante yun lenguaje
estructuras
más queestructurado,
se van a
realizar, mediante
facilitando su una
posterior Inicio
simbología estándar, con
codificación. Instrucción 1
un único punto de inicio y Instrucción 2
uno de finalización. Si condición entonces
Instrucción 3
..
.
Instrucción n
Fin
PSEUDOCÓDIGO:Cómo se Hace?
Cada instrucción que se va a realizar debe
1
comenzar por un verbo, ejemplo: Muestre,
Haga, Lea, etc.

2 Se debe mantener una identación o sangría sobre el


margen izquierdo para identificar fácilmente el
comienzo y final de las estructuras

3 La representación de las estructuras son similares


u homónimas de los lenguajes de programación,
ejemplo: inicio, fin, mientras que, repita_hasta,
si_entonces_sino, etc.
PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.

Leer : Denota la acción de introducir datos o variables


desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde


variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación


aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.


DIAGRAMA DE FLUJO: Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Permite indicar la
realización
Se utiliza para
Entrada de datos
de el
indicar unpunto
proceso
de
desde
ymatemático,
inicioun finalización
dispositivo
o una operación
del diagrama de
estándar
asignación
DIAGRAMA DE FLUJO: Simbología

Conectores
Impresión
Decisión
Flujo Permiten
Permite enlazar
Permiten
establecer darlos
una
Indica la realización
símbolos
continuidad
condición dediagrama
al de
un sentido
relacional ó
único
si la que
página
operaciones
lógica opueden
de
puede área
salida
tomar deser
unhorizontales
trabajo
valor o verticales.
esta
de verdadero llena,
a uno
el círculo
falso, Estas
se no
utiliza
de este símbolo
dispositivo pueden
como
estándar se
unentrecruzarse
conector y cada
dentro
deducen de la
2 flujos una
de ellas
misma (el
página,monitor
debe tener
el oun
otro
alternativos
impresor.) de
único símbolo
símbolo se define decomo
partida
ejecución.
y un conector
único símboloa otrade
destino.
página.
DIAGRAMA DE FLUJO: Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Caso
Si condición
condición entonces
Val1:
Si condición entonces
Instrucciones
Si condición entonces
Instrucciones
Si No Val2:
Instrucciones
Condición Si
si condición
no entonces
Instrucciones
No No
No
Si
Condición
Condición
No siVal3:
no
Instrucciones
Si condición entonces
Condición
Si No
Condición
Val1 Val2 Condición
Val3 Otro Instrucciones
Instrucciones
Instrucciones
Si Si si no
Otros:
Instrucciones
Instrucciones
Fin Caso
DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Ciclo
Ciclo Para
Mientras
Hasta ..
.
. I=1 a n haga,
Para
.
.
Instrucciones
Repita
Mientras que condición
i= 1 a n
Instrucciones
Instrucciones
No Fin Para
Condición ..Hasta que condición
Fin Mientras
Instrucciones ...
..
Instrucciones
Si I:.. variable
1: valor inicial
No
Instrucciones
Condición n: valor final

Si
ALGORITMO: Fases de Diseño

Definición del problema

Análisis del problema

Selección de la mejor alternativa

Diagramación

Prueba de escritorio
ALGORITMO: Definición del Problema

Está dada por el enunciado del


problema, el cuál debe ser claro y
completo

Es importante que conozcamos


exactamente que se desea.

Mientras qué esto no se


comprenda, no tiene caso pasar a
la siguiente etapa.
ALGORITMO: Análisis del Problema
Los datos de
entrada que nos
Recursos
suministran Fórmulas

Área
Proceso de
Trabajo

Los datos de
salida o
resultados que se
esperan
Entendido el problema para
resolverlo es preciso analizar
ALGORITMO: Selección de Alternativa

Solución ..1
Solución ..3
Se debe tener en cuenta el
principio de que las cosas
siempre se podrán hacer de
una mejor forma.
Solución ..2

Solución ..5
Analizado el problema
La queLo produce
importantelos esresultados
Posiblemente
determinar
Esperados tengamos
en el menorcuál
tiempo y al
varias
menor formas de resolverlo
costo
es la mejor alternativa
ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
Plasmar la
problema solucion
mediante el
Pseudocódigo
ALGORITMO: Prueba de Escritorio

Esta prueba consiste


en:
Es Recomendable
Al
Serealizar lo anterior
utiliza
Dar diferentes parase
datos
puedede comprobar
Dar corroborar
diferentes datosque
entrada de si el
al el
entrada y considerar todos los
algoritmo
algoritmo es plasmado
correcto o
programa
posibles casos, aún los de
en si hay
excepción
necesidad
cualquier
o no esperados,
de hacer
paraherramienta
asegurar queajustes
presenta
el
(volver
la
programa noalproduzca
paso
seguir la anterior)
solución secuencia
al
errores
en ejecución
problema indicada
cuando
inicial se
presenten estos casos.
hasta
obtener los
resultados
ALGORITMO: Conceptos

Tipo
Constante
Variable
Dato
de Dato Minima parte de la
información.
Corresponde al tipo de
Se refiere a los
valor aque
Corresponde
Corresponde puede
a un
un espacio
espacio
de almacenarse
elementos
memoria deque
quese
memoria enque
un
almacena
espacio
almacena
utilizan
un en los
dato de
un memoria
que dato que
dentro del
definido
dentro
algoritmos ypara
del
programa aprograma
la cantidad
en en
ejecución
de espacio
ejecución quesiempre
cambia
mantiene requiere
o varíasu
realizar
parasu alguna
almacenar un valor.
contenido
contenido (valor)..
(valor).
operación sobre estos.
ALGORITMO: Tipos de Datos

Boleano

Real cadena
Lógicos
Entero Caracter

Numéricos Carácter
Tipos de
Datos
ALGORITMO: Operadores

+ Aritméticos
> -
>= <
=
/ %
<=
Relacionales ^ Lógicos
<>
No
Y &&
O ||
BIBLIOGRAFIA
 Fundamentos de Programación. Algoritmos y
Estructuras. Luis Joyanes Aguilar. Editorial Mc
Graw Hill.
 http://fuxion.tripod.cl/fundamentos.htm#QUE
%20HERRAMIENTAS

Potrebbero piacerti anche