Está en la página 1de 6

Introduccin a la Programacin

Lic. Carlos Manzur

Algoritmo

Introduccin.-
El ser humano, siempre se ha encontrado ante problemas y/o dificultades de distinta
ndole. Para resolver estas dificultades y/o problemas, realiza operaciones (tareas) que le
permitan hallar una solucin. En ciertos casos, las soluciones son simples, por tanto, no
requiere de un anlisis minucioso ni de un esquema detallado de tareas a realizarse; pero
existen situaciones donde es necesario emplear un razonamiento detallado y ordenado
para encontrar la solucin al problema.

Desde que nacemos nos encontramos ante una serie de problemas, los cuales vamos
aprendiendo a solucionar de la mejor forma posible, la experiencia nos ensea a encontrar
cada vez, mejores soluciones. Por tanto, podemos ver que de forma innata, estamos
acostumbrados a resolver problemas de forma cotidiana.

Qu es un algoritmo?

Existen varias definiciones de acuerdo al autor y el rea con respecto al significado de


algoritmo, algunas de estas definiciones son las siguientes:

Una posible definicin de algoritmo es un conjunto de reglas que permiten obtener un


resultado determinado a partir de ciertas reglas definidas. Otra definicin sera,
algoritmo es una secuencia finita de instrucciones, cada una de las cuales tiene un
significado preciso y puede ejecutarse con una cantidad finita de esfuerzo en un tiempo
finito. Ha de tener las siguientes caractersticas: legible, correcto, modular, eficiente,
estructurado, no ambiguo y a ser posible se ha de desarrollar en el menor tiempo
posible.

El trmino proviene del matemtico rabe Al'Khwarizmi, que escribi un tratado sobre
los nmeros. Este texto se perdi, pero su versin latina, Algoritmi de Numero Indorum,
s se conoce. (http://www-etsi2.ugr.es/alumnos/mlii/Algoritmo.htm)

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.

Un algoritmo se puede definir como una secuencia de instrucciones que representan un


modelo de solucin para determinado tipo de problemas. Grupo de instrucciones que
realizadas en orden conducen a obtener la solucin de un problema. (Ros, 1995).

En esencia, todo problema se puede describir por medio de un algoritmo. Para llegar a
la realizacin de un programa es necesario el diseo previo de un algoritmo, de modo
que sin algoritmo no puede existir un programa. El diseo de algoritmos requiere
creatividad y conocimientos profundos de la tcnica de programacin (Joyanes, 1990).

En la ciencia de la computacin y en la programacin los algoritmos son ms


importantes que los lenguajes de programacin o las computadoras. "Un lenguaje de

1
Introduccin a la Programacin
Lic. Carlos Manzur

programacin es slo un medio para expresar un algoritmo y una computadora es slo


un procesador para ejecutarlo (Luis Joyanes).

Bsicamente, un algoritmo es una descripcin ordenada de las tareas que debemos


realizar para solucionar un determinado problema o tipo de problemas.

A lo largo de nuestras vidas encontraremos diferentes definiciones con diferentes


enfoques, pero que mantienen la esencia de lo que un algoritmo es.

Por tanto, la definicin que asumiremos nosotros es la siguiente:

Un algoritmo es un conjunto de pasos no ambiguos, lgicamente ordenados, que


describen las operaciones que nos lleva a la solucin de un determinado problema.

Un algoritmo debe cumplir con las siguientes caractersticas:

1. Finito.
o El algoritmo posee un inicio.
o El algoritmo posee un final. No puede estar indefinidamente funcionando,
debe poder finalizar en algn momento.

2. Bien definido.
o Cada uno de los pasos del algoritmo est bien definido, pasos no
ambiguos, no debe dar lugar a diferentes interpretaciones.

3. Cero o ms entradas.

4. Resultado.
o El algoritmo debe hacer algo, devolver un resultado de su ejecucin.

Un algoritmo es independiente del lenguaje de programacin, por tanto, podemos ver que
la importancia est en la lgica de la solucin, y no en el lenguaje de programacin.

Un algoritmo, no resuelve problemas, los problemas se solucionan a travs de los


procesos (pasos) descritos en el algoritmo.

Cuando se escribe un algoritmo, cada uno de los pasos (instrucciones), va acompaado


por un nmero consecutivo que empieza en 1, y que nos permite definir la secuencia del
mismo.

Un algoritmo nos permite plantear una solucin a un problema, para ello se debe
verificar o tomar en cuenta los siguientes pasos:

2
Introduccin a la Programacin
Lic. Carlos Manzur

1. Formulacin:
Clara.
Concisa.
Sin ambigedad.
2. Modelo matemtico:
Variables de entrada.
Relacin.

3. Simplificacin:
Algoritmo.
4. Traduccin:
Programa.
5. Verificacin.

Ejemplos

1.-

Formulacin:
Sumar dos nmeros A y B, con A y B dados.
Modelo matemtico:
S=A+B

Variables de entrada: A, B.
Relacin: +
Variable de salida: S

Algoritmo (Simplificacin):
1. Inicio
2. Ingresar un valor para A.
3. Ingresar un valor para B.
4. Sumar los valores A y B, guardando el resultado en S. (S A + B)
5. Mostrar el valor de S.
6. Finalizar.

2.-

Formulacin:
Sumar cinco nmeros dados.

Modelo matemtico:
S=S+X

Variables de entrada: X
Relacin: +
Variable de salida: S

3
Introduccin a la Programacin
Lic. Carlos Manzur

Algoritmo (Simplificacin):
1. Inicio
2. Ingresar un valor para X.
3. Guardar el valor de X en S. (S X)
4. Ingresar siguiente valor de X.
5. Sumar el valor de X al valor de S y guardarlo en S. (S S + X)
6. Si falta ingresar nmeros volver al paso 4.
7. Mostrar el valor de S.
8. Finalizar.

Una vez entendido esto, podemos pasar a simplificar ms nuestra notacin sin perder
claridad y caer en la ambigedad. Rescribamos entonces los ejercicios 1 y 2 anteriormente
mostrados:

3.-

Formulacin:
Sumar dos nmeros A y B, con A y B dados.

Algoritmo
1. Inicio
2. Ingresar A.
3. Ingresar B.
4. S A + B
5. Mostrar S.
6. Finalizar.

1. Inicio
2. Ingresar A.
3. Ingresar B.
3 Mostrar (A+B).
4. Finalizar.

Como se puede apreciar, se tiene algunas variantes en estas nuevas soluciones, pero
conducen de igual forma al resultado deseado.

4.-

Formulacin:
Sumar cinco nmeros dados.

Algoritmo:
1. Inicio
2. Ingresar X.
3. S X
4. Ingresar X.

4
Introduccin a la Programacin
Lic. Carlos Manzur

5. SS+X
6. Si falta ingresar nmeros volver al punto 4.
7. Mostrar S.
8. Finalizar.

En esta solucin se debe realizar un control a medida que se realiza la ejecucin del
algoritmo, de tal forma que podamos determinar el momento en el cual podemos continuar
con el paso 7 sin ir al paso 4.

Una nueva solucin a este problema es la siguiente:

Algoritmo:
1. Inicio
2. C 0 , S 0
3. Ingresar X.
4. C C+1
5. S S + X
6. Si ( C < 5 ) ir a paso 3.
7. Mostrar S.
8. Finalizar.

En esta nueva variante, podemos apreciar que el control de la cantidad de nmeros


ingresados se realiza mediante la variable C, que va contando la cantidad de nmeros
ingresados.

Veamos ahora una nueva variante al ejemplo 2.

5.-

Formulacin:
Sumar cinco nmeros enteros positivos.
Algoritmo:
1. Inicio
2. C 0, S 0
3. Ingresar X.
4. Si ( X < 1 ) ir a paso 3
5. C C+1
6. S S + X
7. Si ( C < 5 ) ir a paso 3.
8. Mostrar S.
9. Finalizar.

En este nuevo planteamiento se ha incorporado el control en relacin al nmero que se


ingresa. Ahora se controla que todo nmero ingresado sea entero positivo, caso contrario,
obliga a ingresar un nuevo nmero.

5
Introduccin a la Programacin
Lic. Carlos Manzur

Nuevamente realicemos una nueva variante en el ejercicio y veamos las modificaciones que
se incorpora.

6.-

Formulacin:
Sumar N nmeros enteros positivos.
Algoritmo:
1. Inicio
2. Ingresar N
3. Si ( N < 1 ) ir a paso 11
4. C 0, S 0
5. Ingresar X.
6. Si ( X < 1 ) ir a paso 4
7. C C+1
8. S S + X
9. Si ( C < N ) ir a paso 4.
10. Mostrar S.
11. Finalizar.

1. Inicio
2. Ingresar N
3. Si ( N < 1 ) ir a paso 2
4. C 0, S 0
5. Ingresar X.
6. Si ( X < 1 ) ir a paso 4
7. C C+1
8. S S + X
9. Si ( C < N ) ir a paso 4.
10. Mostrar S.
11. Finalizar

En este ejercicio se est realizando la generalizacin para a suma de cualquier cantidad de


nmero, pero se puede tener 2 soluciones, en la primera podemos apreciar que si se ingresa
un valor para N menor a 1, el algoritmo termina, en el segundo caso, forzamos a que
ingrese un valor mayor o igual a 1 para N.

También podría gustarte