Medios de Expresión de Un Algoritmo
Medios de Expresión de Un Algoritmo
Medios de Expresión de Un Algoritmo
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural,
pseudocdigo, diagramas de flujo y lenguajes de programacin entre otros. Las
descripciones en lenguaje natural tienden a ser ambiguas y extensas.
La descripcin de un algoritmo usualmente se hace en tres niveles:
DIAGRAMAS DE FLUJO
Los diagramas de flujo son descripciones grficas de algoritmos; usan smbolos conectados
con flechas para indicar la secuencia de instrucciones y estn regidos por ISO.
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural,
pseudocdigo, diagramas de flujo y lenguajes de programacin entre otros. Las
descripciones en lenguaje natural tienden a ser ambiguas y extensas.
Pseudocdigo
El pseudocdigo (falso lenguaje, el prefijo pseudo significa falso) es una descripcin de
alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas
convenciones sintcticas propias de lenguajes de programacin, como asignaciones, ciclos
y condicionales, aunque no est regido por ningn estndar. Es utilizado para describir
algoritmos en libros y publicaciones cientficas, y como producto intermedio durante el
desarrollo de un algoritmo, como los diagramas de flujo, aunque presentan una ventaja
importante sobre estos, y es que los algoritmos descritos en pseudocdigo requieren menos
espacio para representar instrucciones complejas.
Sistemas formales
La teora de autmatas y la teora de funciones recursivas proveen modelos matemticos
que formalizan el concepto de algoritmo. Los modelos ms comunes son la mquina de
Turing, mquina de registro y funciones -recursivas. Estos modelos son tan precisos como
un lenguaje mquina, careciendo de expresiones coloquiales o ambigedad, sin embargo se
mantienen independientes de cualquier computadora y de cualquier implementacin.
Implementacin
Muchos algoritmos son ideados para implementarse en un programa. Sin embargo, los
algoritmos pueden ser implementados en otros medios, como una red neuronal, un circuito
elctrico o un aparato mecnico y elctrico. Algunos algoritmos inclusive se disean
especialmente para implementarse usando lpiz y papel. El algoritmo de multiplicacin
tradicional, el algoritmo de Euclides, la criba de Eratstenes y muchas formas de resolver la
raz cuadrada son slo algunos ejemplos.
Variables
Son elementos que toman valores especficos de un tipo de datos concreto. La declaracin
de una variable puede realizarse comenzando con var. Principalmente, existen dos maneras
de otorgar valores inciales a variables:
Este se utiliza para representar el inicio o el fin de un algoritmo. Tambin puede representar
una parada o una interrupcin programada que sea necesaria realizar en un programa.
Este smbolo es utilizado para representar una entrada o salida de informacin, que sea
procesada o registrada por medio de un perifrico.
Este es utilizado para enlazar dos partes de un diagrama pero que no se encuentren en la
misma pgina.
Este es utilizado para indicar la secuencia del diagrama de flujo, es decir, para indicar el
sentido de las operaciones dentro del mismo.
Este es utilizado para representar la salida o para mostrar la informacin por medio del
monitor o la pantalla.
Resulta de gran utilidad para los niveles posteriores de anlisis como herramienta de
balanceo. Y es conocido como el Diagrama de Flujo de Datos DFD de Nivel "0".
En el diagrama de nivel superior se plasman todos los procesos que describen al proceso
principal. En este nivel los procesos no suelen interrelacionarse directamente, sino que
entre ellos debe existir algn almacenamiento o entidad externa que los una. Esta regla de
construccin sirve como ayuda al analista para contemplar que en un nivel tan elevado de
abstraccin (DFD Nivel 1) es altamente probable que la informacin que se maneja
requiera ser almacenada en el sistema aunque no est especificado por un Requisito
funcional, siendo en realidad un requisito no-funcional.
El DFD (Diagrama De Flujo De Datos) nivel 2 puede considerarse el mximo para ser
validado en forma conjunta con el usuario dado que en los niveles posteriores el alto grado
de complejidad del diagrama puede resultar de muy difcil lectura para personas ajenas al
equipo de sistemas. Tambin se recomienda el diagrama de nivel superior.
PSEUDOCODIGOS
No existe una sintaxis estndar para el pseudocdigo, aunque los ocho IDE's que manejan
pseudocdigo tengan su sintaxis propia. Aunque sea parecido, el pseudocdigo no debe
confundirse con los programas esqueleto que incluyen cdigo ficticio, que pueden ser
compilados sin errores. Los diagramas de flujo y UML pueden ser considerados como una
alternativa grfica al pseudocdigo, aunque sean ms amplios en papel.
ESTRUCTURAS
Se pueden definir ms de un arreglo en una misma instruccin, separndolos con una coma
(,).
Dimension <ident1> (<max11>,...,<max1N>),..., <identM> (<maxM1>,...,<maxMN>)
Es importante notar que es necesario definir un arreglo antes de utilizarlo.
Condicional Si-Entonces
La secuencia de instrucciones ejecutada por una instruccin Segun depende del valor de
una variable numrica.
Segun <variable> Hacer
<nmero1>: <instrucciones>
<nmero2>,<nmero3>: <instrucciones>
<...>
De Otro Modo: <instrucciones>
FinSegun
Esta instruccin permite ejecutar opcionalmente varias acciones posibles, dependiendo del
valor almacenado en una variable de tipo numrico. Al ejecutarse, se evala el contenido de
la variable y se ejecuta la secuencia de instrucciones asociada con dicho valor.
Cada opcin est formada por uno o ms nmeros separados por comas, dos puntos y una
secuencia de instrucciones. Si una opcin incluye varios nmeros, la secuencia de
instrucciones asociada se debe ejecutar cuando el valor de la variable es uno de esos
nmeros.
Opcionalmente, se puede agregar una opcin final, denominada De Otro Modo, cuya
secuencia de instrucciones asociada se ejecutar slo si el valor almacenado en la variable
no coincide con ninguna de las opciones anteriores.
Lazos Mientras
La instruccin Mientras ejecuta una secuencia de instrucciones mientras una condicin sea
verdadera.
Mientras <condicin> Hacer
<instrucciones>
FinMientras
Al ejecutarse esta instruccin, la condicin es evaluada. Si la condicin resulta verdadera,
se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del ciclo. Al finalizar
la ejecucin del cuerpo del ciclo se vuelve a evaluar la condicin y, si es verdadera, la
ejecucin se repite. Estos pasos se repiten mientras la condicin sea verdadera.
Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por
primera vez la condicin resulta ser falsa.
Si la condicin siempre es verdadera, al ejecutar esta instruccin se produce un ciclo
infinito. A fin de evitarlo, las instrucciones del cuerpo del ciclo deben contener alguna
instruccin que modifique la o las variables involucradas en la condicin, de modo que sta
sea falsificada en algn momento y as finalice la ejecucin del ciclo.
Lazos Repetir
SISTEMAS FORMALES
Son un tipo de sistema lgico-deductivo constituido por un lenguaje formal, una gramtica
formal que restringe cuales son las expresiones correctamente formadas de dicho lenguaje y
las reglas de inferencia y un conjunto de axiomas que permite encontrar las proposiciones
derivables de dichos axiomas. Los sistemas formales tambin han encontrado aplicacin
dentro de la informtica, la teora de la informacin, y la estadstica, para proporcionar una
definicin rigurosa del concepto de demostracin. La nocin de sistema formal corresponde
a una formalizacin rigurosa y completa del concepto de sistema axiomtico, los cuales
pueden ser expresados en lenguaje formal o en lenguaje natural formalizado.
INTRODUCCIN
En el siguiente trabajo pretendemos presentar una serie de concepto y definiciones propios
del estudio de los Algoritmos.
Es importante el estudio y conocimiento de lo que hoy conocemos como Algoritmos
Computacionales, que desde su aparicin hasta nuestros das es, y seguir siendo; vital para
el desarrollo de aplicaciones para computadoras y el manejo y dominio de la lgica de
programacin para resolver problemas. Asi posibilitar a los estudiante alcanzar una visin
sistemtica de lo que conocemos sobre Los Algoritmos Computacionales.
CONCLUSIN
Luego de realizar este trabajo hemos visto como los algoritmos son una de las herramientas
ms complejas y aplicables en el rea de la informtica y el mundo de los computadores.
Un algoritmo es el conjunto de operaciones y procedimientos que deben seguirse para
resolver un problema, es por ellos que debemos estudiarlos y conocerlos.
BIBLIOGRAFIA
http://ladinopaola.blogspot.com/p/medios-de-expresion-de-un-algoritmo.html
http://www.monografias.com/trabajos59/diagrama-flujo/diagrama-flujo2.shtml
http://es.wikipedia.org/wiki/Diagrama_de_flujo_de_datos