Sunteți pe pagina 1din 6

ALGORITMO

Un ALGORITMO es una secuencia finita bien definida de tareas bien definidas, cada una
de las cuales se puede realizar con una cantidad de recursos finitos.

Se dice que una tarea esta bien definida, si se sabe de manera precisa las acciones
requeridas para su realizacin. Aunque los recursos que debe utilizar cada tarea deben ser
finitos estos no estn limitados, es decir, si una tarea bien definida requiere una cantidad
inmensa (pero finita) de algn recurso para su realizacin, dicha tarea puede formar parte de
un algoritmo. Adems, se dice que una secuencia de tareas esta bien definida si se sabe el
orden exacto de ejecucin de cada una de las mismas.

EJECUTAR un algoritmo es realizar las tareas del mismo, en el orden especificado y utilizando
los recursos disponibles.

Un algoritmo tiene tres componentes que siempre estn presentes:


Entrada: son los datos que necesita un algoritmo para poder ser ejecutado;
Proceso: son los pasos que hay que seguir, utilizando la entrada;
Salida: es el resultado que entrega el algoritmo.

Los algoritmos son una herramienta para resolver problemas computacionales. La definicin
de un problema computacional especifica en trminos generales la relacin deseada entre la
entrada y la salida El algoritmo especifica cmo la entrada se transforma en la salida.

CARACTERSTICAS
Las caractersticas que debe poseer una secuencia de tareas para considerarse algoritmo
son: precisin, definitud y finitud.

Precisin Definitud o determinismo Finitud

El algoritmo debe Si se sigue el algoritmo dos o ms El algoritmo debe terminar


indicar el orden exacto veces con los mismos datos de en algn momento y debe
de ejecucin de cada entrada, se deben obtener los mismos usar una cantidad de
tarea. datos de salida. recursos finita.

Dada una cantidad de datos de entrada de un algoritmo, se dice que la cantidad de un


recurso usada por dicho algoritmo para su ejecucin determina la complejidad del
algoritmo respecto a tal recurso. Cuando se implementa un algoritmo en un computador
digital, los recursos con los que se cuenta son tiempo de proceso y memoria. Por lo tanto,
a un algoritmo implementado en un computador digital se le pueden calcular sus
complejidades temporal y espacial.

El estudio de la complejidad de un algoritmo respecto a sus recursos es conocido como


algoritmia, la cual no es tratada en este curso.

TECNICAS PARA LA FORMULACION DE ALGORITMOS

Las tcnicas para la formulacin de algoritmos ms populares son: Frmulas matemticas,


Diagramas de Flujo y Pseudocdigo.
DIAGRAMAS DE FLUJO

Se basan en la utilizacin de diversos smbolos para representar operaciones especficas. Se


les llama diagramas de flujo porque los smbolos utilizados son.

SIMBOLOGIA UTILIZADA EN LOS DIAGRAMAS DE FLUJO


SIMBOLO FUNCION

Elementos de un algoritmo
Expresiones
Una expresin es una combinacin de valores y operaciones que son evaluados durante la
ejecucin del algoritmo para obtener un valor. Por ejemplo, 2+3 es una expresin que, al ser
evaluada, siempre entrega el valor 5.

Asignaciones
Cuando un algoritmo calcula valores, se necesita ponerles un nombre para poder referirse a
ellos en pasos posteriores. Una asignacin se representa as: variable = expresin

Condicionales
A veces un algoritmo debe realizar pasos diferentes bajo condiciones distintas.

Ciclos
Un ciclo ocurre cuando un algoritmo ejecuta una serie de instrucciones varias veces.
Como un algoritmo no puede quedarse pegado, un ciclo debe tener adems una condicin de
trmino, cuyo valor indica si el ciclo debe continuar o terminar. Cada ejecucin de un ciclo se
llama iteracin.
Entrada
Cuando un algoritmo necesita recibir un dato, lo podemos representar as: Leer(variable)

Salida
Una vez que el algoritmo ha resuelto el problema para el que fue diseado, debe entregar sus
resultados como un mensaje. La salida puede ser representada as:

PSEUDOCODIGO

Es un lenguaje de especificacin de algoritmos. El uso de tal lenguaje hace el paso de


codificacin final (esto es, la traduccin a un lenguaje de programacin) relativamente fcil.

El pseudocdigo naci como un lenguaje similar al lenguaje natural y era un medio para
representar bsicamente las estructuras de control de programacin estructurada. Se
considera un primer borrador, dado que el pseudocdigo tiene que traducirse posteriormente
a un lenguaje de programacin.

La ventaja del pseudocdigo es que en su uso en la planificacin de un programa, el


programador se puede concentrar en la lgica y en las estructuras de control y no
preocuparse de las reglas de un lenguaje especfico. Es tambin fcil modificar el
pseudocdigo si se descubren errores o anomalas en la lgica del programa, adems de
todo esto es fcil su traduccin a lenguajes.

El pseudocdigo utiliza para representar las acciones sucesivas palabras reservadas


(similares a sus homnimos en los lenguajes de programacin), tales como inicio, fin, si-
entonces-sino, mientras, repita-hasta.etc

ESTRUCTURA BASICA DE UN ALGORITMO

En esencia un algoritmo est constituido por los siguientes tres elementos:

Datos Instrucciones Estructuras de control

Las que determinan el


Lo que el algoritmo recibe, Las acciones o procesos que el orden en que se
procesa y entrega como algoritmo realiza sobre los ejecutarn las
resultado. datos. instrucciones del
algoritmo.

2.1.2 EJEMPLOS DE ALGORITMOS

1. Disear un diagrama de flujo de un programa que permita convertir una cantidad


ingresada en kilogramos a libras.
Solucin:
PSEUDOCODIGO
Proceso KilosLibras
Escribir "CONVIERTE DE KILOS A LIBRAS";
Escribir "Ingresar (Kg): ";
Leer kilos;
libras <- 2.20462262*kilos;
Escribir "=> ",libras," lb" ;
FinProceso

2. Hacer el diagrama de flujo de un programa que permita determinar si un nmero


es mltiplo de otro
Proceso MultiploDeOtro
Escribir 'Ingrese un numero';
Leer n1;
Escribir 'Ingrese otro numero';
Leer n2;
Si n1>n2 Entonces
Si n1 MOD n2=0 Entonces
Escribir 'El numero ',n1,' es multiplo de ',n2;
Sino
Escribir 'El numero ',n1,' No es multiplo de ',n2;
FinSi
Sino
Si n2 MOD n1=0 Entonces
Escribir 'El numero ',n2,' es multiplo de ',n1;
Sino
Escribir 'El numero ',n2,' No es multiplo de ',n1;
FinSi
FinSi
FinProceso

Fuentes:

http://www.virtual.unal.edu.co/cursos/ingenieria/2001839/modulo/contenido_1.htm

S-ar putea să vă placă și