Вы находитесь на странице: 1из 49

Introduccin a la

Teora de
Algoritmos

Piedad Marchena
OBJETIVOS

Aplicar conceptos bsicos de la matemtica en la


solucin de problemas
Aplicar la lgica algortmica para definir una solucin
a un problema propuesto, en trminos de entrada-
proceso-salida.
COMPUTADORA

Dispositivo electrnico que


ejecuta las instrucciones
en un programa, para ello
acepta datos de entrada,
los procesa, entrega un Datos
de
resultado a partir de ese
Datos
de entrada

procesamiento y almacena
entrada
Datos
resultados. de
entrada

Datos de salida
PARTES DE UNA COMPUTADORA
Dispositivos de Entrada

Permiten el ingreso de
datos a un computador.
Ejemplos: teclados, ratones,
scanners, micrfonos,
cmaras fotogrficas,
cmaras de video, game
pads y guantes de realidad
virtual.
Dispositivos de Salida

Son aquellos que permiten


mostrar informacin
procesada por el computador.
Ejemplo: monitores,
impresoras, audfonos,
plotters, guantes de realidad
virtual, gafas y cascos
virtuales.
Dispositivo de Almacenamiento

Son aquellos en los cuales el computador puede


guardar informacin nueva y/o obtener informacin
previamente almacenada. Ejemplos: discos flexibles,
discos duros, unidades de cinta, CD-ROM, CD-ROM
de re-escritura y DVD.
Dispositivos de Comunicacin

Son aquellos que le permiten a un computador


comunicarse con otros. Entre estos se cuentan los
modems, tarjetas de red y enrutadores.
Dispositivos de Procesamiento

Es la parte del computador que le permite realizar


los clculos y controlar los dispositivos. Esta
formado fundamentalmente por: unidad central de
proceso, la memoria y el bus de datos y
direcciones.
Unidad Central de Procesos

Es el cerebro del computador, encargada de realizar


los clculos, utilizando informacin almacenada en la
memoria y de controlar los dispositivos, procesando
las entradas y salidas provenientes y/o enviadas a
los mismos. El bus de datos permite su comunicacin
con los dems dispositivos.
Unidad Aritmtica Lgica
Es la encargada de realizar las operaciones
aritmticas y lgicas requeridas por el
programa en ejecucin.

Unidad de Control
Es la encargada de la ejecucin de las
instrucciones y de controlar el proceso de la
computadora.
Memoria

Encargada de almacenar la informacin que es


accedida por la UCP y por los dispositivos. Se
divide en:
Memoria Central (Interna).
Memoria Auxiliar (Externa)
Memoria Interna
RAM (Random Access Memory): Memoria de
escritura y lectura, es la memoria principal del
computador. Solo se mantiene mientras el
computador est encendido.
ROM (Read Only Memory): Memoria de solo
lectura, es permanente y no se afecta por el
encendido o apagado del computador.
Cache: Memoria de acceso muy rpido, usada
como puente entre la UCP y la memoria RAM,
para evitar las demoras en la consulta de la
memoria RAM.
Dato

Expresiones generales
que describen
caractersticas de las
entidades.
Por s solos no
constituyen
informacin, sino que
sta surge del
adecuado
procesamiento de los
datos
Unidades de Datos
Qu es Informacin?

Est constituida por un


grupo de datos ya
supervisados y
ordenados, que sirven
para construir un mensaje
basado en un cierto
fenmeno o ente.
Permite resolver problemas
y tomar decisiones.
Programa

Conjunto de
instrucciones escritas en
un lenguaje de
programacin que
ejecutadas de manera
secuencial contribuyen
en la solucin de un
problema.
Software
Est formado por una serie
de instrucciones y datos,
que permiten aprovechar
todos los recursos que el
computador.
El software le da vida al
computador, haciendo que
sus componentes funcionen
de forma ordenada.
Lenguaje de Programacin
Conjunto de smbolos, caracteres y reglas
(programas) que le permiten a las personas
comunicarse con la computadora.
Permiten realizar operaciones de entrada/salida,
calculo, manipulacin de textos,
lgica/comparacin y
almacenamiento/recuperacin
Tipos de Lenguaje

Lenguaje Mquina. Entendible directamente por la


computadora. Bits
Lenguaje de Bajo Nivel (Ensamblador). Las
instrucciones se escriben en nemotcnicos.
Lenguaje de Alto Nivel. Las instrucciones se escriben
con palabras similares al lenguaje humano.
Algoritmo

Un algoritmo es una
secuencia ordenada de
operaciones tal que su
ejecucin resuelve
determinado problema.
Caractersticas del Algoritmo

Las caractersticas
fundamentales que debe tener
todo algoritmo son:
Debe ser preciso
Debe estar definido
Debe ser finito (debe tener un
nmero finito de pasos).
Debe ser independiente del
lenguaje de programacin que se
emplee para implementarlo.
Lenguaje Algortmico

Smbolos y reglas que se utilizan para


describir de manera explcita un proceso.
Tipos de lenguajes Algortmico:
Grficos. Representacin Grfica de las
operaciones del algoritmo. (Diagramas de
flujo).
No Grficos. Descripcin de las operaciones
que debe realizar un algoritmo.
(Pseudocdigo)
Pasos para Solucin de Problemas

Los procesos necesarios para


la creacin de un programa son:
1.Especificacin y anlisis del
problema en cuestin.
2.Diseo de un algoritmo que
resuelva el problema.
3. Codificacin del algoritmo en un
lenguaje de programacin.
4. Validacin del programa.
Anlisis del Problema

Definir:
La entrada de datos
Salida esperada
Procesamiento de los
datos. (Mtodos y
frmulas)
Diseo de un Algoritmo

La resolucin de un
problema mediante un
ordenador consiste en,
partiendo de una
especificacin del problema,
construir un programa que lo
resuelva.
Ejemplos de Algoritmos

Problema: Se desea ensear a un nio a lavarse las


manos. Cmo lo debo hacer?
INICIO
Abrir el grifo de agua.
Mojarse las manos.
Aplicarse jabn.
Enjuagarse las manos.
Cerrar el grifo de agua.
Secarse la manos con papel.
Exponer las manos a corriente de aire caliente.
FIN
Ejemplos

Desarrollar la solucin de
los siguientes problemas:
Comprar las entradas para ver
la final del equipo Junior.
Poner la mesa para la cena.
Lavar los platos de la comida.
Hacer una taza de caf
Tipos de Algoritmos
Cualitativos: son
aquellos que son una
descripcin de las
acciones que se
realizan para solucionar
un problema.
Cuantitativos: Son
aquellos que son
representados por las
palabras reservadas del
algoritmo a travs de
sus representaciones.
Codificacin

Escribir la solucin del problema (diagrama de flujo


o pseudocdigo), en una serie de instrucciones
detalladas, en un cdigo reconocible por la
computadora conocido como cdigo fuente, el cual
se escribe en lenguaje de programacin o lenguaje
de alto nivel.
Prueba y Depuracin
Depuracin. Proceso de identificar y eliminar
errores, para dar paso a una solucin sin
errores.
Resulta una tarea tan creativa como el mismo
desarrollo de la solucin, por ello se debe
considerar con el mismo inters y entusiasmo.
Documentacin

Es la gua o comunicacin escrita es sus variadas


formas, ya sea en enunciados, procedimientos,
dibujos o diagramas.
La documentacin se divide en:
Documentacin Interna. Comentarios en el cdigo
fuente.
Documentacin Externa. Descripcin del problema,
nombre del autor, algoritmo, diccionario de datos y
cdigo fuente
Manual del Usuario.
Mantenimiento

Se lleva acabo despus de terminado el programa,


cuando se detecta que es necesario hacer algn
cambio, ajuste o complementacin al programa para
que siga trabajando de manera correcta. Para poder
realizar este trabajo se requiere que el programa
este correctamente documentado.
Variables
Cada variable debe tener:
Un tamao de memoria ocupada y un modo de
representacin interna.
Un conjunto de operadores y de tratamientos especficos
que pueden aplicarse a la variable
El nombre de una variable debe ser nico y no ambiguo
El nombre de una variable es un identificador diferente de
cualquier palabra clave utilizada en el lenguaje o nombre de
una funcin externa.
Los nombres de las variables inician con una letra y son
sucesiones de letras y cifras y el smbolo _ (guin bajo).
Reglas para Nombrar una
Variable

Debe iniciar con una letra.


Puede contener despus de la letra
se puede colocar letras o nmeros.
No debe contener espacios en
blanco.
No debe contener operadores
matemticos como (+, -, *, / , etc.).
Tipos de Datos
Tipos de
Datos

Estructu-
Simples
rados

Alfanumrico Arreglos Registros Archivos Apuntadores


Numricos Lgicos
s
Clasificacin de Variables

Numricas
Lgicas
Por su
contenido Alfanumricas (String)

De Trabajo
Contadores
Por su uso Acumuladores
Expresiones

Aritmticas

Relacinales

Lgicas
Operadores Aritmticos

Operando1 Operando2 Resultado


Jerarqua de los Operadores
Aplicando la jerarqua de operadores resuelva:
(4*1/2)^2*3-2^2+1
4+1*5^2-1
9/3+4^2-5*1+9/-2+3
5/2+3-4*5/2
(4+1)*5^2-1
Operadores Relacionales
OPERADORES LGICOS

Y o tambin conocido como AND. De este


operador se pueden obtener los siguientes
resultandos:
V= verdadero
F=Falso

Expresin 1(E1) Expresin 2(E2) E1 Y E2


V V V
V F F
F V F
F F F
OPERADORES LGICOS

Conocido como OR. De este operador se pueden


obtener los siguientes resultandos:
V= verdadero
F=Falso

Expresin 1(E1) Expresin 2(E2) E1 O E2


V V V
V F V
F V V
F F F
OPERADORES LGICOS

NO o tambin conocido como NOT. De este operador se


pueden obtener los siguientes resultandos:
V= verdadero
F=Falso

Expresin 1(E1) NO (E1)


V F
V F
F V
F V
PREGUNTAS?
WEBGRAFA

Definicin de datos - Qu es, Significado y Concepto


http://definicion.de/datos/#ixzz3yGTo8tjt
Concepto de informacin - Definicin, Significado y
Qu es
http://definicion.de/informacion/#ixzz3yGVqdACd
Concepto de Software
http://fraba.galeon.com/software.htm
Concepto de Sistema de informacin:
http://biblioteca.itson.mx/oa/dip_ago/introduccion_si
stemas/p3.htm
Algoritmos:
http://biolab.uspceu.com/aotero/recursos/docencia/T
EMA%202.pdf
BIBLIOGRAFA

R. Capacho, R. Ebratt y A. Mancilla. Diseo y construccin de


algoritmos. Barranquilla: Ediciones Uninorte, 2015. TEXTO
GUA.
Capacho, G. Len, Estrategias para el diseo y construccin
de algoritmos. Editorial Acadmica Espaola EAE, 2014.
https://www.eae-
publishing.com/catalog/details//store/es/book/978-3-659-
04037-5
L. Joyanes, Fundamentos de Programacin: Algoritmos,
Estructura de datos y objetos. Madrid: McGraw-Hill, 2003.
Juganaru Mathieu, Mihaela. Introduccin a la programacin.
Mxico: Larousse - Grupo Editorial Patria, 2014. ProQuest
ebrary. Web. 26 January 2016.Copyright 2014. Larousse -
Grupo Editorial Patria. All rights reserved.

Вам также может понравиться