Algoritmos-Clase 1

Descargar como ppsx, pdf o txt
Descargar como ppsx, pdf o txt
Está en la página 1de 29

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE INGENIERIA
INDUSTRIAL

FUNDAMENTOS DE PROGRAMACIÓN

Algoritmos
ING. JUAN DOYLET WASHBRUM, MGs.
ALGORITMO: Definición

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: Nombre

El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra
del matemático árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.
ALGORITMO: Caracteríticas
LEGIBLE
CONCRETO

Debe realizar las EFICIENTE


FINITO Debe
Debe generar
estar
indicarbien
un
el
Debe
operaciones
Debe
funciones
estar
tenerlibre
u
con
Debe
mismo
estructurado
orden ser...
resultado
de
terminar
operaciones
un
demínimo
errores.
en algún
de
para
siempre
realización
para su quefácil
dese
utilización
las
(Validado)
momento
que fue de
entendimiento.
cadasiga.
paso.
recursos.
creado.
NO
DEFINIDO
AMBIGUO
PRECISO
ALGORITMO: Estructura
Conforma
Corresponden a los
Datos de instruc
datos requeridos
que realiz
para realizar el
operacion
algoritmo (datos de
datos.
entrada) y los datos
que son generados Procesos
(datos de salida)

Determinan la
organización de las Estructuras
instrucciones que de Control
deben ser
realizadas.
ALGORITMO: Elementos
Definición
de variables y
Las instrucciones constantes
Es necesario
que se van a
identificar
realizar que estar
deben
datosestructuradas
bien se necesitan y Proceso
Entrada Estructuras
Salida
ingresar,
tener cuales
un orden
sirven de de control
lógico, conforma
el fin de
auxiliar y cuales se
evitar
van a generar. en
inconsistencias
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 elSupongamos
diario local y mirar
que si
ve la película
deseamos anunciada.
ir al cine a verSila
la ve anunciada
tercera mira
película deen
Laqué
cine la hacen
Guerra delasy se va a
Galaxias,
verla. Si noprocedemos?
¿cómo la ve anunciada,
espera a los estrenos de
lasemana que viene.
ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
Buscar la página de cines en el diario
1
local, con fecha de hoy

2 Revisar la cartelera de arriba abajo y de izquierda


a derecha, buscando entre los títulos existentes.

3 Si se encuentra el título La Guerra de las


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

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


4
esperar 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 Debe Definirse del


Por ejemplo: problema
algoritmo debe sellevarnos
SiLos
No sealgoritmos
requiere
debemos crean la
hallar
omitir el
a la resolución del
para
velocidad resolver
de de
un automóvil,
contexto
problema. nuestros Debe estar dentro
esproblemas.
necesario, definir si la
algoritmos.
Siempre que sea posible de contexto
Es
Es importante
distancia debe
necesario que junto
ser
estableceren
seguiremos
al
lo algoritmo,
metros, quekilómetros,
se necesitaetc y y
personalmente los pasos Debe resolver el
eldescribamos
tiempo
dónde se claramente
estará
debe dado
comenzar. en
de nuestro que éste
el problema algoritmo problema
segundos u horas, ya nosque
para comprobar
resolver.que puede
son
lapermite velocidad
efectivamente correctos y
representarse en Km/h ó Debe evitar la
conducen efectivamente a
mts/seg. ambigüedad
la solución esperada.
ALGORITMO: Técnicas de Diseño

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

Diagrama de Flujo
Es una técnica
Está técnica quepermite
permite representar
representar el algoritmo
Pseudocódigo
gráficamenteunlas lenguaje
mediante
operaciones estructurado,
más y
estructuras que
facilitando su se van a
posterior Inicio
realizar, mediante una
codificación. Instrucción 1
simbología estándar, con Instrucción 2
un único punto de inicio y Si condición entonces
Instrucción 3
uno de finalización. ..
.
Instrucción n
Fin
PSEUDOCÓDIGO:Cómo se Hace?
Cada instrucción que se va a realizar
1
debe 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
deelunpunto
indicar proceso
de
desde
matemático,
inicioun
y finalización
dispositivo
o una del
operación
diagramade
estándar
asignación
DIAGRAMA DE FLUJO: Simbología

Conectores
Impresión
Decisión
Flujo Permiten
Permite enlazaruna
establecer
Permiten dar continuidad
los
Indica la realización
símbolos
al condición
de un sentido
diagrama relacional
si la página
deó
único
operaciones
lógica que pueden ser
de salida
o área depuede
trabajo tomar
esta
horizontales
un o verticales.
valor de verdadero a un o
llena, el círculo se
falso, deEstas
esteunno pueden
símbolo se
dispositivo
utiliza como estándar
conector
entrecruzarse
deduceny cada una
dentro la 2misma
demonitor
(el flujos
o
de ellasalternativos
debe tener un de
página, el otro símbolo
impresor.)
único símbolo ejecución.
de partida
se define como un
y un único símbolo de
conector a otra página.
destino.
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
Si condición entonces
Instrucciones
Instrucciones
Si No Val2:
Instrucciones
Condición Si
si condición
no entonces
No No Instrucciones
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 ..
..
.
Para v=valini, v=valfinal, inc
.
Instrucciones
Repita
Mientras que condición
v=valini,v=valfinal, incremento Fin Para
Instrucciones
No .Instrucciones
Instrucciones
..Hasta que condición
Condición Fin Mientras
..
v:.. variable
Instrucciones
Si No ..
valini: valor inicial
Condición valfinal: valor final
Instrucciones
Si inc: incremento
ALGORITMO: Fases de Diseño
Definición del problema

Análisis del problema


Algoritmo

Selección de la mejor alternativa

Diagramación

Prueba de escritorio
ALGORITMO: Definición del Problema
Está
Estádada
dadaporpor el
elenunciado
enunciado
del
delproblema,
problema, elelcuál
cuáldebe
debe
ser
ser claro
claroyycompleto
completo

Es importante
Es importante que
que
conozcamos exactamente
conozcamos exactamente
quese
que sedesea.
desea.

Mientras
Mientras qué
qué esto
esto no
nose
se
comprenda,
comprenda, no no tiene
tienecaso
caso
pasar
pasar aala
la siguiente
siguienteetapa.
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
Entendido el problema para se esperan
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

La que produce los Solución ..5


Lo importante
Analizado el problema es
resultados Esperados en el
determinar
Posiblemente cuál
tengamos
menor tiempo y al menor
varias
es laformas
mejorde resolverlo
alternativa
costo
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
Serealizar
Al
Dar utiliza
diferenteslo datos parase
anterior
de
Dar diferentes datos
puede ycomprobar
corroborar
entrada que
considerar si el
el
todos
de
los entrada
posiblesesal programa
casos, aún loso
algoritmo
algoritmo correcto
plasmado
de excepción o no
en si hay necesidad
cualquier
esperados,
seguir para
la asegurar
secuencia
de hacer ajustes
herramienta presenta
que el programa
indicada no
(volver
la
produzca al paso anterior)
solución
errores en al
problema
ejecución inicialse
cuando
hasta
presenten estos casos.
obtener los resultados
ALGORITMO: Conceptos

Tipo
Constante
Variable
Dato
de Dato Minima parte de la
Corresponde al tipo de
Corresponde
información. a un
valor que puede
Corresponde a un
espacio
Se de
refiere memoria enque
espacio deamemoria
los
almacenarse un
que
almacena
elementos
espacio un
que dato
de se que
memoria
almacena un dato que
dentro
definido del
y programa
a la en
cantidad
dentro
utilizan del programa
en los mantiene en
ejecución
de espacio que requiere
ejecución
algoritmos cambia
para o varía
siempre su
parasualmacenar contenido
realizar alguna un
contenido valor.
(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 ^
!=
<> No
Lógicos

Y &&
O ||
BIBLIOGRAFIA
• Fundamentos de Programación. Algoritmos y
Estructuras. Luis Joyanes Aguilar. Editorial
Mc Graw Hill.
• http://fuxion.tripod.cl/fundamentos.htm#Q
UE%20HERRAMIENTAS

También podría gustarte