Está en la página 1de 9

ITINERARIO1 Unidad 3

Algoritmo, pseudocdigo y lenguajes de


programacin

Prof. Martn Risolino


ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Algoritmo
En matemticas, ciencias de la computacin, y disciplinas relacionadas, un algoritmo es
una lista bien definida, ordenada y finita de operaciones que permite hallar la solucin a
un problema. Dado un estado inicial y una entrada, a travs de pasos sucesivos y bien
definidos se llega a un estado final, obteniendo una solucin.

El concepto de algoritmo, aunque similar y obviamente relacionado, no debe confundirse


con el concepto de programa. Mientras el primero es la especificacin de un conjunto de
pasos (operaciones, instrucciones, rdenes,...) orientados a la resolucin de un
problema, el segundo es ese conjunto de operaciones especificadas en un determinado
lenguaje de programacin y para un computador concreto, susceptible de ser ejecutado
(o compilado o interpretado). Un algoritmo, estrictamente hablando, no puede
ejecutarse hasta que se implementa, ya sea en un lenguaje de programacin, en un
circuito elctrico, en un aparato mecnico, usando papel y lpiz, o en algn otro modelo
de computacin.

En la vida cotidiana se emplean algoritmos en multitud de ocasiones para resolver


diversos problemas. Algunos ejemplos se encuentran en los instructivos (manuales de
usuario), los cuales muestran algoritmos para usar el aparato en cuestin o inclusive en
las instrucciones que recibe un trabajador por parte de su patrn.

Cuando escribimos un programa de computadora, generalmente estamos llevando a cabo


un mtodo que se ha inventado para resolver algn problema previamente.

Pgina 2
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Caractersticas de los algoritmos:

El cientfico de computacin Donald Knuth ofreci una lista de cinco propiedades, que
son ampliamente aceptadas como requisitos para un algoritmo:

Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje


natural, pseudocdigo, diagramas de flujo y lenguajes de programacin entre
otros.

Debe ser finito: "Un algoritmo siempre debe terminar despus de un nmero
finito de pasos".

Debe ser Preciso: "Cada paso de un algoritmo debe estar precisamente definido;
las operaciones a llevar a cabo deben ser especificadas de manera rigurosa y no
ambigua para cada caso".

Tiene una Entrada: "Un algoritmo tiene cero o ms entradas: cantidades que le
son dadas antes de que el algoritmo comience, o dinmicamente mientras el
algoritmo corre. Estas entradas son tomadas de conjuntos especficos de
objetos".

Tiene una Salida: "Un algoritmo tiene una o ms salidas: cantidades que tienen
una relacin especfica con las entradas".

Debe tener Eficacia: "Tambin se espera que un algoritmo sea eficaz, en el


sentido de que todas las operaciones a realizar en un algoritmo deben ser
suficientemente bsicas como para que en principio puedan ser hechas de
manera exacta y en un tiempo finito por un hombre usando lpiz y papel".

Pgina 3
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Pseudocdigo

Un pseudocdigo (falso lenguaje), es una serie de normas lxicas y gramaticales


parecidas a la mayora de los lenguajes de programacin, pero sin llegar a la rigidez de
sintaxis de estos ni a la fluidez del lenguaje coloquial.

Esto permite codificar un programa con mayor agilidad que en cualquier lenguaje de
programacin, con la misma validez semntica, normalmente se utiliza en las fases de
anlisis o diseo de Software, o en el estudio de un algoritmo.

Forma parte de las distintas herramientas de la ingeniera de software.

No hay ningn compilador o intrprete de pseudocdigo informtico (en el caso de que


lo hubiera seran los lectores de dicho pseudocdigo informtico, por ej. una idea de un
jefe de programacin al su personal), y por tanto no puede ser ejecutado en un
ordenador, pero las similitudes con la mayora de los lenguajes informticos lo hacen
fcilmente convertible.

El pseudocdigo describe un algoritmo utilizando una mezcla de frases en lenguaje


comn, instrucciones de programacin y palabras clave que definen las estructuras
bsicas. Su objetivo es permitir que el programador se centre en los aspectos lgicos de
la solucin a un problema.

Pgina 4
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Los lenguajes de programacin


Un lenguaje de programacin es un lenguaje que puede ser utilizado para controlar el
comportamiento de una mquina, particularmente una computadora. Consiste en un
conjunto de smbolos y reglas sintcticas y semnticas que definen su estructura y el
significado de sus elementos y expresiones.

Un lenguaje de programacin permite a uno o ms programadores especificar de manera


precisa: sobre qu datos una computadora debe operar, cmo deben ser estos
almacenados, transmitidos y qu acciones debe tomar bajo una variada gama de
circunstancias. Todo esto, a travs de un lenguaje que intenta estar relativamente
prximo al lenguaje humano o natural, tal como sucede con el lenguaje Lxico.

Los procesadores usados en las computadoras son capaces de entender y actuar segn lo
indican programas escritos en un lenguaje fijo llamado lenguaje de mquina (ceros y
unos).

Todo programa escrito en otro lenguaje puede ser ejecutado de dos maneras:

Mediante un programa que va adaptando las instrucciones conforme son


encontradas. A este proceso se lo llama interpretar y a los programas que
lo hacen se los conoce como intrpretes.

Traduciendo este programa al programa equivalente escrito en lenguaje


de mquina. A ese proceso se lo llama compilar y al traductor se lo
conoce como un compilador.

Pgina 5
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Clasificacin de los lenguajes de programacin

Los lenguajes de programacin se determinan segn el nivel de abstraccin, Segn la


forma de ejecucin y Segn el paradigma de programacin que poseen cada uno de ellos
y esos pueden ser:

Segn su nivel de abstraccin:

Lenguajes de bajo nivel

Los lenguajes de bajo nivel son lenguajes de programacin que se acercan al


funcionamiento de una computadora. El lenguaje de ms bajo nivel es, por
excelencia, el cdigo mquina (ceros y unos).
A ste le sigue el lenguaje ensamblador, el cual contiene ayudas nemotcnicas para
realizar diferentes operaciones.

Lenguajes de medio nivel

Tienen ciertas caractersticas que los acercan a los lenguajes de bajo nivel pero
teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje ms cercano
al humano (con palabras generalmente en ingles ) y, por tanto, de alto nivel. Tienen
el acceso independiente necesario para trato directo con las memorias y el micro.

Lenguajes de alto nivel

Los lenguajes de alto nivel son normalmente fciles de aprender porque estn
formados por elementos de lenguajes naturales, como el ingls.

Pgina 6
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Segn la forma de ejecucin

Lenguajes compilados

Naturalmente, un programa que se escribe en un lenguaje de alto nivel tambin


tiene que traducirse a un cdigo que pueda utilizar la mquina.

Los compiladores son aquellos cuya funcin es traducir un programa escrito en un


determinado lenguaje a un idioma que la computadora entienda (lenguaje mquina
con cdigo binario, ceros y unos).

Lenguajes interpretados

Se puede tambin utilizar una alternativa diferente de los compiladores para


traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en
forma permanente el cdigo objeto que se produce durante la corrida de
compilacin para utilizarlo en una corrida de produccin futura, el programador slo
carga el programa fuente en la computadora junto con los datos que se van a
procesar y es ejecutado normalmente.

Segn el paradigma de programacin

Un paradigma de programacin representa un enfoque particular o filosofa que tenga el


programador para la construccin del software. No es mejor uno que otro sino que cada
uno tiene ventajas y desventajas.

Se pueden clasificar los lenguajes en :

El paradigma funcional

El paradigma lgico.

El paradigma orientado a objetos.

Pgina 7
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Transistor (Extensin de la U1)

Como habamos visto en la unidad uno, el Transistor es un dispositivo electrnico


semiconductor que cumple funciones de amplificador, oscilador, conmutador o
rectificador.

El trmino "transistor" es la contraccin en ingls de transfer resistor ("resistencia de


transferencia").
Actualmente se los encuentra prcticamente en todos los enseres domsticos de uso
diario: radios, televisores, grabadores, reproductores de audio y vdeo, hornos de
microondas, lavadoras etc...

El transistor reemplaz, con grandes ventajas a los tubos de vaco o vlvulas en todos los
circuitos elctricos.

Ventajas de los transistores electrnicos

El consumo de energa es sensiblemente bajo.


El tamao y peso de los transistores es bastante menor que los tubos de vaco.
Son menos frgiles
Una vida larga til (muchas horas de servicio).
Puede permanecer mucho tiempo en deposito (almacenamiento).
No necesita tiempo de calentamiento.

Pgina 8
ITINERARIO1 Unidad 3
Instalacin y configuracin de sistemas operativos y aplicaciones

Esquema de algoritmos,
lenguaje de programacin y pseudocdigo

Pgina 9

También podría gustarte