Sunteți pe pagina 1din 5

Definicin de Algoritmo.

"Un algoritmo se define como un mtodo que se realiza paso a paso para solucionar un problema que termina
en un nmero finito de pasos".

Las caractersticas fundamentales que debe cumplir todo algoritmo son:

Debe ser preciso. e indicar el orden de realizacin de cada paso.


Debe ser definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.
Debe ser finito. Si se sigue un algoritmo, se debe terminar en algn momento ; o sea debe tener un
nmero finito de pasos.
La definicin de un algoritmo debe describir tres partes : Entrada, Proceso y Salida.

Disear un algoritmo para cambiar una llanta a un coche.

Inicio.
Traer gato.
Levantar el coche con el gato.
Aflojar tornillos de las llantas.
Sacar los tornillos de las llantas.
Quitar la llanta.
Poner la llanta de repuesto.
Poner los tornillos.
Apretar los tornillos.
Bajar el gato.
Fin.

Algoritmos Cotidianos.

Son aqullos que nos ayudan a resolver problemas diarios, y que los hacemos casi sin darnos cuenta de que
estamos siguiendo una metodologa para resolverlos.

Algunos ejemplos son:

Un cliente ejecuta un pedido a una fbrica. La fbrica examina en su banco de datos la ficha del cliente, si el
cliente es solvente entonces la empresa acepta el pedido, en caso contrario rechazar el pedido.

Pasos del algoritmo:

Inicio.

Leer el pedido.
Examinar ficha del cliente.
Si el cliente es solvente aceptar pedido, en caso contrario rechazar pedido.

Fin.

Determinar el mayor de tres nmeros enteros.

Pasos del algoritmo :

1
1. Comparar el primero y el segundo entero, deduciendo cul es el mayor.

2. Comparar el mayor anterior con el tercero y deducir cul es el mayor. Este ser el resultado.

Los pasos anteriores se pueden descomponer en otros pasos ms simples en los que se denomina refinamiento
del algoritmo.

1. Obtener el primer nmero (entrada), denominado NUM1.

2. Obtener el segundo nmero (entrada), denominado NUM2.

3. Compara NUM1 con NUM2 y seleccionar el mayor ; si los dos enteros son iguales, seleccionar NUM1.
Llamar a este nmero MAYOR.

4. Obtener el tercer nmero (entrada), y se denomina NUM3.

5. Compara MAYOR con NUM3 y seleccionar el mayor ; si los dos enteros son iguales, seleccionar el
MAYOR. Denominar a este nmero MAYOR.

6. Presentar el valor MAYOR (salida).

7. Fin.

Definicin de Lenguajes Algortmicos.

Los algoritmos pueden describirse utilizando diversos lenguajes. Cada uno de estos lenguajes permiten
describir los pasos con mayor o menor detalle.

La clasificacin de los lenguajes para algoritmos puede enunciarse de la siguiente manera :

Lenguaje Natural.
Lenguaje de Diagrama de Flujo.
Lenguaje Natural de Programacin.
Lenguaje de Programacin de Algoritmos.

Lenguaje Natural.

Es aqul que describe en espaol, para nuestro caso, los pasos a seguir utilizando un vocabulario cotidiano. Se
le conoce como lenguaje jerga cuando se utilizan trminos especializados de una determinada ciencia,

profesin o grupo.

Lenguaje de Diagrama de Flujo.

Es aqul que se vale de diversos smbolos para representar las ideas o acciones a desarrollar. Es til para
organizar las acciones o pasos de un algoritmo pero requiere de etapas posteriores para implementarse en un
sistema de cmputo.

Lenguaje Natural de Programacin.

Son aqullos que estn orientados a la solucin de problemas que se definen de una manera precisa.
Generalmente son aplicados para la elaboracin de frmulas o mtodos cientficos.

2
El lenguaje natural tiene las siguientes caractersticas :

Evita la ambigedad (algo confuso que se puede interpretar de varias maneras).


Son precisos y bien definidos.
Utilizan trminos familiares al sentido comn.
Elimina instrucciones innecesarias.

Lenguaje de Programacin de Algoritmos.

Es aqul que se utiliza para introducir en la computadora un algoritmo especfico. Se les conoce tambin
como Lenguaje de Programacin.

Lenguaje de Programacin :

Es un conjunto de palabras, smbolos y reglas sintcticas mediante los cuales puede indicarse a la
computadora los pasos a seguir para resolver un problema.

Los lenguajes de programacin pueden clasificarse por diversos criterios, siendo el ms comn su nivel de
semejanza con el lenguaje natural, y su capacidad de manejo de niveles internos de la mquina.

Los principales tipos de lenguajes utilizados son tres :

Lenguaje Mquina.
Lenguaje de bajo Nivel (ensamblador).
Lenguajes de Alto Nivel.

Lenguaje Mquina.

Son aqullos que estn escritos en lenguajes directamente inteligibles por la mquina (computadora), ya que
sus instrucciones son cadenas binarias (cadenas o series de caracteres de dgitos 0 y 1) que especifican una
operacin y las posiciones (direccin) de memoria implicadas en la operacin se denominan instrucciones de
mquina o cdigo mquina. El cdigo mquina es el conocido cdigo binario.

Ventajas del Lenguaje Mquina

Posibilidad de cargar (transferir un programa a la memoria) sin necesidad de traduccin posterior, lo que
supone una velocidad de ejecucin superior a cualquier otro lenguaje de programacin.

Desventajas del Lenguaje Mquina

Dificultad y lentitud en la codificacin.


Poca fiabilidad.
Gran dificultad para verificar y poner a punto los programas.
Los programas solo son ejecutables en el mismo procesador (CPU).
En la actualidad, las desventajas superan a las ventajas, lo que hace prcticamente no recomendables a
los lenguajes mquinas.

Lenguajes de Bajo Nivel.

Son ms fciles de utilizar que los lenguajes mquina, pero al igual que ellos, dependen de la mquina en
particular. El lenguaje de bajo nivel por excelencia es el ensamblador. Las instrucciones en lenguaje
ensamblador son instrucciones conocidas como nemotcnicos. Por ejemplo, nemotcnicos tpicos de

3
operaciones aritmticas son : en ingls : ADD, SUB, DIV, etc. ; en espaol : SUM, RES, DIV, etc.

Una instruccin tpica de suma sera :

ADD M, N, P

Esta instruccin significa "sumar el contenido en la posicin de memoria M al nmero almacenado en la


posicin de memoria N y situar el resultado en la posicin de memoria P" . Evidentemente es ms sencillo
recordar la instruccin anterior con un nemotcnico que su equivalente en cdigo mquina.

0110 1001 1010 1011

Un programa escrito en lenguaje ensamblador, requiere de una fase de traduccin al lenguaje mquina para
poder ser ejecutado directamente por la computadora.

El programa original escrito en lenguaje ensamblador se denomina programa fuente y el programa traducido
en lenguaje mquina se conoce como programa objeto, el cual ya es directamente entendible por la
computadora.

Ventajas del lenguaje ensamblador frente al lenguaje mquina.

Mayor facilidad de codificacin y, en general, su velocidad de clculo.

Desventajas del lenguaje ensamblador.

Dependencia total de la mquina lo que impide la transportabilidad de los programas (posibilidad de ejecutar
un programa en diferentes mquinas. El lenguaje ensamblador del PC es distinto del lenguaje ensamblador del
Apple Machintosh.

La formacin de los programadores es ms compleja que la correspondiente a los programadores de alto nivel,
ya que exige no solo las tcnicas de programacin, sino tambin el conocimiento del interior de la mquina.

Los lenguajes ensamblador tienen sus aplicaciones muy reducidas, se centran bsicamente en aplicaciones de
tiempo real, control de procesos y de dispositivos electrnicos.

Lenguajes de Alto Nivel.

Estos lenguajes son los ms utilizados por los programadores. Estn diseados para que las personas escriban
y entiendan los programas de un modo mucho ms fcil que los lenguajes mquina y ensambladores. Un
programa escrito en lenguaje de alto nivel es independiente de la mquina (las instrucciones no dependen del
diseo del hardware o de una computadora en particular), por lo que estos programas son portables o
transportables. Los programas escritos en lenguaje de alto nivel pueden ser ejecutados con poca o ninguna
modificacin en diferentes tipos de computadoras.

Ventajas de los lenguajes de alto nivel.

El tiempo de formacin de los programadores es relativamente corto comparado con otros lenguajes.
La escritura de programas se basa en reglas sintcticas similares a los lenguajes humanos. Nombres de
las instrucciones tales como READ, WRITE, PRINT, OPEN, etc.
Las modificaciones y puestas a punto de los programas son ms fciles.
Reduccin del costo de los programas.
Transportabilidad.

4
Desventajas de los lenguajes de alto nivel.

Incremento del tiempo de puesta a punto al necesitarse diferentes traducciones del programa fuente
para conseguir el programa definitivo.
No se aprovechan los recursos internos de la mquina que se explotan.
mucho mejor en lenguajes mquina y ensambladores.
Aumento de la ocupacin de memoria.
El tiempo de ejecucin de los programas es mucho mayor.

Para una mejor compresin de este tema se definir el concepto de programa, por ser este un trmino muy
utilizado en el diseo estructurado de algoritmos.

Programa : Es un conjunto de instrucciones escritas en un lenguaje de programacin que indican a la


computadora la secuencia de pasos para resolver un problema.

Historia y apliacacion de los lenguajes algoritmicos.

Al igual que los idiomas sirven de vehculo de comunicacin entre los seres humanos, existen lenguajes que
realizan la comunicacin entre los seres humanos y las computadoras. Estos lenguajes permiten expresar los
programas o el conjunto de instrucciones que el operador humano desea que la computadora ejecute.

Los lenguajes de computadoras toman diferentes formas; los de las primeras computadoras, como la ENIAC y
la EDSAC, se componan en el lenguaje real de las mquinas mismas. La dificultad de programar las
mquinas de esta manera limitaba drsticamente su utilidad y proporcionaba un fuerte incentivo para que se
desarrollaran lenguajes de programacin ms orientados hacia la expresin de soluciones con la notacin de
los problemas mismos.

Los primeros lenguajes de programacin se conocieron como Lenguajes Ensambladores, un ejemplo es:
TRANSCODE, desarrollado para la computadora FERUT. En los lenguajes ensambladores se define un
cdigo especial llamado mnemnico para cada una de las operaciones de la mquina y se introduce una
notacin especial para especificar el dato con el cual debe realizarse la operacin.

A mediados de los aos 60's aparecieron los primeros lenguajes de propsito general como FORTRAN,
FORTRAN IV, ALGOL, COBOL, BASIC, PL/I, ADA, C,C++, PASCAL, etc. pero el desarrollo de nuevas
tecnologas, tanto en arquitectura de computadoras como en lenguajes de programacin, contina a paso
acelerado, cada vez con mayor velocidad, el panorama est cambiando de una etapa de sistemas y lenguajes
especialmente desarrollados para aplicaciones individuales. Los lenguajes de programacin actuales son los
conocidos como Lenguajes visuales, como por ejemplo Visual Fox, Visual Basic, Visual C .

Tema: Apuntes de los lenguajes algoritmicos, historia y sus aplicaciones.

Autor:Yadira Z.Tapia Nuez.

Escuela:Instituto Tecnologico de Chihuahua II.

Carrera :Lic. en informatica.

Pais:Mexico.

P.D.Doy mi entera autorizacion para que manejen este trabajo como mejor les paresca, es lo menos que puedo
hacer me salvaron la vida cuando mas desesperada estaba, gracias.

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