Sei sulla pagina 1di 5

ALGORITMO

Un algoritmo es una serie de operaciones detalladas y no ambiguas. En otras


palabras un algoritmo es un conjunto de reglas para resolver una cierta clase
de problemas.
Así mismo, un algoritmo es el medio por el que se explica cómo puede
resolverse un problema, mediante aproximaciones paso a paso. Se puede
formular de muchas formas con el cuidado de que no exista ambigüedad.
Por lo tanto, los algoritmos no tienen que ver con los lenguajes de
programación, dado que un mismo algoritmo o diagrama de flujo puede
representarse en diversos lenguajes de programación, es decir, se trata de
un ordenamiento previo a la programación.
PARTES DE UN ALGORITMO
Todo algoritmo debe constar de las siguientes partes:
o Input o entrada. El ingreso de los datos que el algoritmo necesita para
operar.
o Proceso. Se trata de la operación lógica formal que el algoritmo
emprenderá con lo recibido del input.
o Output o salida. Los resultados obtenidos del proceso sobre el input,
una vez terminada la ejecución del algoritmo.
MEDIOS DE EXPRESIÓN DE UN ALGORITMO.
Los algoritmos pueden ser expresados de muchas maneras, incluyendo el
lenguaje natural, pseudocódigo, diagrama de flujo y lenguajes de
programación, entre otros. Las descripciones en lenguaje natural tienden a
ser ambiguas y extensas. Por otra parte, el usar pseudocódigo o diagramas
de flujo evita muchas ambigüedades del lenguaje natural.
La descripción de un algoritmo se hace usualmente en tres niveles:
1. Descripción de alto nivel. Se establece el problema, se selecciona un
modelo matemático y se explica el algoritmo de manera verbal,
posiblemente con ilustraciones y omitiendo detalles.
2. Descripción formal. Se usa pseudocódigo para describir la secuencia
de pasos que encuentran la solución.
3. Implementación. Se muestra el algoritmo expresado en un lenguaje de
programación especifico o algún objeto capaz de llevar a cabo
instrucciones.
También es posible incluir un teorema que demuestre que el algoritmo es
correcto, un análisis de complejidad o ambos.
Diagrama de flujo.
Los diagramas de flujo son descripciones graficas de algoritmos; usan
símbolos conectados con flechas para indicar la secuencia de instrucciones
y están regidos por ISO.
Los diagramas de flujo son usados para representar algoritmos pequeños, ya
que abarcan mucho espacio y su construcción es laboriosa.
Pseudocódigo.
El pseudocódigo es una descripción de alto nivel de un algoritmo que emplea
una mezcla de lenguaje natural con algunas convenciones sintácticas propias
de lenguajes de programación.
Los algoritmos descritos en pseudocódigo requieren menos espacio para
representar instrucciones complejas.
PROGRAMAS Y PARADIGMAS DE PROGRAMACION Y
LENGUAJES

Un programa informático se define como un conjunto de instrucciones que,


una vez ejecutado, realiza una o varias tareas en una computadora. De esta
forma, sin programas, una computadora no puede realizar las actividades
para las que fue diseñada y creada. El conjunto general de programas que
posee una computadora se denomina software, término que se utiliza para
definir al equipamiento o soporte lógico de una computadora.
Un programa se escribe con instrucciones en un lenguaje de programación,
el cual, a su vez, está definido por su sintaxis, que establece e indica las
reglas de escritura (la gramática), y por la semántica de los tipos de datos,
instrucciones, definiciones, y todos los otros elementos que constituyen un
programa.
Un lenguaje de programación es un caso particular del lenguaje informático;
este último permite hacer programas, pero también describir datos,
configuraciones físicas y protocolos de comunicación entre equipos y
programas.
PARADIGMAS DE PROGRAMACION
Un paradigma de programación provee (y determina) la visión y los métodos
de un programador en la construcción de un programa o subprograma.
Existen diferentes paradigmas que derivan en múltiples y variados estilos de
programación y en diferentes formas de solución de problemas:
 Paradigma imperativo. En este paradigma se impone que cualquier
programa es una secuencia de instrucciones o comandos que se
ejecutan siguiendo un orden de arriba hacia abajo; este único enlace
del programa se interrumpe exclusivamente para ejecutar otros
subprogramas o funciones, después de lo cual se regresa al punto de
interrupción.
 Paradigma estructurado. Este paradigma es un caso particular de
paradigma imperativo, por lo que se imponen únicamente algunas
estructuras de código, prohibiendo una continuación del cálculo de
manera caótica. Por ejemplo, se impone que las instrucciones sean
agrupadas en bloques (procedimientos y funciones) que comunican;
por tanto, el código que se repite tiene la forma de un ciclo (loop, en
inglés), gobernado por una condición lógica.
 Paradigma declarativo. Un programa describe el problema a solucionar y
la manera de resolverlo, pero no indica el orden de las acciones u
operaciones que se deben seguir. En este caso, hay dos paradigmas
principales:

 Paradigma funcional. Conforme a este, todo se describe como una


función.
 Paradigma lógico. De acuerdo con este, todo se describe como un
predicado lógico.
LENGUAJES DE PROGRAMACION

Un lenguaje de programación puede verificar uno o más paradigmas. Por


ejemplo, el lenguaje Java comprueba el paradigma orientado a objetos y el
código que compone la parte de métodos de los objetos verifica el paradigma
estructurado.
 Lenguaje imperativo. Los primeros lenguajes imperativos fueron los
lenguajes de máquina de los equipos originales. En estos lenguajes,
las instrucciones eran muy simples, lo que hizo más fácil la aplicación
de hardware, pero dificultaron la creación de programas complejos.
Algunos ejemplos son: lenguaje máquina, lenguaje ensamblador, C,
Fortran, Cobol, Pascal, Ada, C++, C#, Java. A excepción del lenguaje
máquina y el lenguaje ensamblador, los otros constituyen lenguajes
estructurados.
 Lenguaje declarativo. En este lenguaje se describe el problema que
queremos solucionar, mas no las instrucciones necesarias para
resolverlos. Los lenguajes más conocidos son: LISP (Scheme), Prolog,
SQL, Smalltalk, Datalog. Asimismo, el lenguaje Java también puede
ser considerado como un lenguaje declarativo.
 Lenguaje orientado a objetos. La programación basada en objetos es
el estilo de programación que soporta principalmente encapsulación e
identidad de objetos. Como lenguajes orientados a objetos existen:
Simula, C++, Java, C#(.Net), Python.

Potrebbero piacerti anche