You are on page 1of 69

ALGORITMOS

PRESENTADO POR:
JAIME CORONEL SANTILLAN

INFORMATICA
El tratamiento de la informacin es tan
antiguo
como
el hombre y se ha
ido
potenciando y haciendo ms sofisticado con el
transcurso del tiempo hasta llegar a la era de
la electrnica.
El hombre no ha parado a lo largo de la historia
de crear mquinas y mtodos para procesar la
informacin.

DEFINICIONES BASICAS
Informtica: Proviene de la unin de las
palabras informacin y automtica. Es la ciencia
que permite el tratamiento automtico de la
informacin por medio de computadores.
Informacin: Es cualquier conjunto de smbolos
que representen hechos, objetos o ideas.

Computadora:

Es una mquina compuesta de


una serie de circuitos electrnicos, capaz de
recoger unos datos de entrada, efectuar con ellos
ciertos clculos y devolver los datos por medio
de algn medio de salida.

ASPECTOS QUE DIFERENCIAN EL


COMPUTADOR DEL RESTO DE LA MQUINA
CON CAPACIDAD DE TRATAR INFORMACIN

Gran

velocidad de tratamiento de la informacin.

Gran

potencia de clculo aritmtico y lgico.

Capacidad para memorizar los programas y


datos
necesarios
para
resolver cualquier
problema tcnico o de gestin.

Capacidad

de comunicacin con las personas y


con otras mquinas y dispositivos para recibir o
transmitir datos.
Posibilidad de tratamiento de datos en tiempo
real.

Acta sin intervencin de un operador


humano y bajo el control de un programa
previamente
almacenado en la propia computadora.

TIPOS DE INFORMACIN
Datos: Son conjuntos de smbolos que utilizamos
para expresar o representar un valor numrico, un
hecho, un objeto o una idea, en la forma
adecuada para su tratamiento.
Instrucciones: Indican a la computadora qu es lo
que debe realizar
FUNCIONAMIENTO BASICO DE UN COMPUTADOR
Datos
ORDENADOR
Instrucciones

Resultados

REPRESENTACION DE LA
INFORMACION
La informacin se almacena dentro del ordenador
de forma codificada en cdigo binario.
El BIT es la unidad elemental de informacin que
equivale a un valor binario y constituye, dentro de
una computadora
la capacidad mnima de
informacin.

Un

byte es el nmero de bits necesarios para


almacenar un carcter. Este nmero va a
depender del cdigo concreto usado por la
computadora, aunque generalmente se usan 8,
esto es, podemos asumir que un byte equivale
a 8 bits.

ESTRUCTURA DE UN COMPUTADOR
MEMORIA MASIVA

MEMORIA PRINCIPAL
Datos e Instrucciones

Entrada

UNIDAD DE
CONTROL

UNIDAD
Aritmtico
Lgica

PROCESADOR CENTRAL (CPU)

Salida

CLASIFICACION DE LAS
COMPUTADORAS
En funcin del Uso
Computador de uso general
Computador de uso especfico

En funcin de la potencia, capacidad o el tamao del


computador
Supercomputadores
Macrocomputadores

(mainframes)
Minicomputadores
Estaciones de trabajo (workstations)
Computadores profesiones / personales (Pc's)

PROGRAMAS E INSTRUCCIONES
Un programa es un conjunto de sentencias que se dan a una
computadora indicndole las operaciones que se desea que
realice. Las sentencias son conjuntos de smbolos, que se
construyen siguiendo un lenguaje de programacin y se
clasifican en:
Sentencias imperativas o instrucciones
Sentencias declarativas

Las instrucciones se pueden clasificar en:


De transferencia de datos
De tratamiento
De bifurcacin y saltos

Los lenguajes de alto nivel son independientes de la


computadora y facilitan la programacin.

COMPILADORES E INTERPRETES
Los Traductores son programas que toman como
datos de entrada programas escritos en un lenguaje
de alto nivel y devuelven como datos de salida el
programa en lenguaje mquina de esa computadora
equivalente, de tal forma que ya si puede ser
ejecutado por la CPU de la computadora.
Los Compiladores son traductores que cogen en
conjunto el programa escrito en lenguaje de alto
nivel, programa fuente, lo traducen y generan un
programa en cdigo mquina, programa objeto.

Los Intrpretes, van analizando, interpretando y


ejecutando instruccin a instruccin del programa
fuente y por tanto no generan programa objeto.
El sistema operativo es una serie de programas que
permiten controlar y utilizar de forma eficiente y
cmoda la computadora

PROGRAMACION DE COMPUTADORAS
El Hardware es el soporte fsico de la computadora y el
Software es el soporte lgico.
LENGUAJES DE PROGRAMACION
oFORTRAN
oCOBOL
oLISP
oPASCAL
oPROLOG
oSMALLTALK
oOBJECT PASCAL
oDELPHI
oJAVA
oC
oC++

LA LGICA DE PROGRAMACIN
Uno de los aspectos importantes en la
programacin de computadoras, es la lgica de la
programacin, es por eso que esta actividad
pretende, a parte de relajar, activar la capacidad
de analizar y encontrar los mtodos adecuados de
solucionar diferentes problemas

TIPOS DE DATOS
Datos

Numricos:
Enteros(Representan los nmeros que no
posee componente fraccionaria y pueden ser
tanto positivos como negativos) y
Reales (Representan todos los nmeros que
poseen componente fraccionaria y tambin
pueden positivo o negativo)

Datos

Lgicos (booleano), este tipo de dato solo


puede tomar uno de dos valores (verdadero o
falso)

D atos

tipo Carcter: Representan datos


alfanumricos que pueden ser:
Cadena de caracteres (string): es una sucesin
de caracteres numricos, letras, smbolos, etc.
Carcter: (char): contiene solo un carcter y
tambin se incluye las comillas para su
asignacin I

VARIABLES Y CONSTANTES
Una variable es un espacio reservado en el computador para
contener valores que pueden cambiar durante el desarrollo del
algoritmo.
Variables locales: es aquella que afecta nicamente el
subprograma.
Variable Global: variable que afecta a un programa en todo su
contexto, programa principal y modulo.
Una Constante es un espacio reservado para contener valores
que no cambian a lo largo de la ejecucin de un algoritmo

CARACTERSTICAS DE LOS NOMBRES DE LAS


VARIABLES Y CONSTANTES

Normalmente deben iniciar con una letra


No deben contener smbolos ni signos de puntuacin (#,
(,?...)
No deben contener espacios en blanco

OPERADORES
Las operaciones que se realicen sobre estas variables y/o
constantes, estn definidas por una serie de operadores, entre
los cuales se encuentran:
Aritmticos
Potencia ^ **
Producto
*
Divisin
/ Div Mod
Suma
+
Resta
Relacionales
Igual a
Menor que
Menor o igual que
Mayor que
Mayor o igual que
Distinto a

=
<
<=
>
>=
<>

Alfanumricos
oConcatenacin
+
Ej.
UN + AD = UNAD
Lgicos
Negacin
Conjuncin/producto
Disyuncin/suma

Not no
And y
Or
o

Parntesis
Permite alterar el orden en que realizan
las diferentes operaciones

Algoritmos
Es un conjunto de pasos lgicos ordenados,
secuencialmente y finita, escritos de tal
forma que permiten visualizar la solucin
de un problema determinado en un
momento especfico.

ALGORITMO: NOMBRE

El nombre en latn de algoritmo proviene


de la traduccin que realiz Fibonacci, de
la obra del matemtico rabe
Al'Khwarizmi llamada , Algoritmi de
Numero Indorum.

CARACTERTICAS

Un algoritmo
Debe ser...

FINITO

Debe tener
terminar en algn
momento

CONCRETO

Debe indicar un
orden de
realizacin de
cada paso.

LEGIBLE

Debe estar bien


estructurado
para su fcil
entendimiento.

EFICIENTE

Debe realizar las


operaciones con
un mnimo de
utilizacin de
recursos.

NO
AMBIGUO

Debe generar el
mismo resultado
siempre que se
siga.

DEFINIDO

Debe realizar las


funciones u
operaciones para
las que fue
creado.

PRECISO

Debe estar libre


de errores.
(Validado)

ALGORITMO: ESTRUCTURA
Datos

Procesos

Estructuras
de Control

Corresponden a los datos


requeridos para realizar el
algoritmo (datos de entrada) y
los datos que son generados
(datos de salida)
Conforma el grupo de
instrucciones que realizan las
operaciones con los datos.

Determinan la organizacin
de las instrucciones que
deben ser realizadas.

ELEMENTOS
Definicin
de variables y
constantes

Entrada

Proceso
Estructuras
de control

Cuerpo del algoritmo

Salida

QUIENES

PUEDEN HACER UN ALGORITMO

Toda persona, implcitamente y diariamente


disea y realiza algoritmos, para dar
solucin a situaciones cotidianas de forma
natural.
Sin embargo el programador, disea el
algoritmo consciente de que al realizar
cada paso obtendr la solucin de un
problema especfico.

REQUISITOS

Los algoritmos se crean


para resolver
problemas.
Es importante que junto
al algoritmo,
describamos claramente
el problema que ste nos
permite resolver.

Debe Definirse el
problema

No debemos
omitir el contexto
de nuestros
algoritmos.
Es necesario
establecer lo que
se necesita y
dnde se debe
comenzar.

Debe estar dentro


de contexto

Seguir los pasos del algoritmo


debe llevarnos a la resolucin
del problema.
Siempre que sea posible
seguiremos personalmente
los pasos de nuestro
algoritmo para comprobar que
son efectivamente correctos y
conducen efectivamente a la
solucin esperada.

Debe resolver el
problema

Por ejemplo:
Si se requiere hallar la
velocidad de un automvil,
es necesario, definir si la
distancia debe ser en
metros, kilmetros, etc. y
el tiempo estar dado en
segundos u horas, ya que
la velocidad puede
representarse en Km/h
mts/seg.

Debe evitar la
ambigedad

ALGORITMO:

TCNICAS

DE

DISEO
Top Down

Est
Es unatcnica
tcnica depermite
diseo
dividir
el problema
descendente
donde se en
pequeas
partes, a las
realiza un refinamiento
cuales
se que
les da
solucin
sucesivo,
permite
por
luego se
darleseparado,
una organizacin
a
integran
las soluciones
las instrucciones,
en
para
el problema
formaresolver
de mdulos
o
principal.
bloques.

Divide y vencers

ALGORITMO: TCNICAS DE REPRESENTACIN


Es una tcnica que
permite representar
grficamente las
operaciones y
estructuras que se van a
realizar, mediante una
simbologa estndar, con
un nico punto de inicio y
uno de finalizacin.

Diagrama de Flujo

PSEUDOCDIGO

Est tcnica permite


representar el algoritmo
mediante un lenguaje
ms estructurado,
facilitando su posterior
codificacin.

Inicio
Instruccin 1
Instruccin 2
Si condicin entonces
Instruccin 3
..
.
Instruccin n
Fin

PSEUDOCDIGO:CMO

SE

HACE?

Cada instruccin que se va a realizar


debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

Se debe mantener una identacin o sangra


sobre el margen izquierdo para identificar
fcilmente el comienzo y final de las estructuras

La representacin de las estructuras son


similares u homnimas de los lenguajes de
programacin, ejemplo: inicio, fin, mientras
que, repita hasta, si_entonces_sino, etc.

PSEUDOCDIGO:CMO

SE

HACE?

Inicio : Denota el punto de inicio del algoritmo.


Leer : Denota la accin de introducir datos o variables
desde un dispositivo estndar de entrada.
Imprimir : Representa la accin de enviar datos desde
variables a un dispositivo estndar de salida.
Calcular : Denota la realizacin de cualquier operacin
aritmtica que genere valores para ser
almacenados en una variable.
Fin: Denota el punto de finalizacin del algoritmo.

DIAGRAMAS DE FLUJO
Son una herramienta til en la
programacin de computadoras,
cuyas caractersticas, hace que
se aplique no solo en la
informtica si no en todos los
procesos que llevan
una secuencia lgica

Aspectos fundamentales
Sencillez: Construccin fcil.
Claridad: Fcil reconocimiento de sus elementos.
Utilizacin de normas en la construccin de
algoritmos.
Flexibilidad: Facilidad en las modificaciones.

SMBOLOS

HERRAMIENTAS QUE MEJORAN LA


PRESENTACION

DIAGRAMA DE FLUJO: Simbologa

Inicio
Fin

Se utiliza para
indicar el punto de
inicio y finalizacin
del diagrama

Lectura
Captura

Permite indicar la
Entrada de datos
desde
un dispositivo
estndar

Proceso
Permite indicar la
realizacin
de un proceso
matemtico,
o una operacin de
asignacin

Impresin

Indica la realizacin
de
operaciones de salida
a un
dispositivo estndar
(el monitor o
impresora.)

Decisin

Permite establecer una


condicin relacional
lgica que puede tomar
un valor de verdadero o
falso, de este smbolo se
deducen 2 flujos
alternativos de
ejecucin.

Flujo

Permiten enlazar los


smbolos de un sentido
nico pueden ser
horizontales o verticales.
Estas no pueden
entrecruzarse y cada
una de ellas debe tener
un nico smbolo de
partida y un nico
smbolo de destino.

Conectores

Permiten dar
continuidad al
diagrama si la pgina o
rea de trabajo esta
llena, el crculo se
utiliza como un
conector dentro de la
misma pgina, el otro
smbolo se define como
un conector a otra
pgina.

ALGORITMO: FASES

DE

DISEO

Algoritmo

Definicin del problema


Anlisis del problema
Seleccin de la mejor alternativa
Diagramacin
Prueba de escritorio

ALGORITMO: DEFINICIN DEL PROBLEMA


Est dada por el enunciado
del problema, el cul 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: ANLISIS DEL PROBLEMA


Entendido el
problema para
resolverlo es preciso
analizar

Recursos

Frmulas

Proceso

Los datos de
entrada que nos
suministran

rea
de
Trabajo

Los datos de
salida o
resultados
que se esperan

Solucin ..1
Solucin ..3

Solucin ..2
Solucin ..4

Analizado el problema
Posiblemente tengamos
varias formas de resolverlo

Lo importante es
determinar cul
es la mejor alternativa

La que produce los


resultados Esperados en el
menor tiempo y al menor
costo

ALGORITMO: DIAGRAMACIN

Una vez que


sabemos
cmo resolver el
problema

Dibujar
grficamente
la lgica de la
alternativa
seleccionada

Plasmar la
solucion
mediante el
Pseudocdigo

PRUEBA

DE

ESCRITORIO

Esta prueba consiste en:


Dar diferentes datos
de entrada al programa

seguir la secuencia
indicada
hasta
obtener los resultados

You might also like