Anda di halaman 1dari 6

TUTORIAL CON LOS PRINCIPIOS BSICOS DE LOS ALGORITMOS, PSEUDOCDIGO Y DIAGRAMAS DE

FLUJO.

ALGORITMOS

En matemticas, ciencias de la computacin, y disciplinas relacionadas, un algoritmo (del latn, dixit algorithmus
y ste a su vez del matemtico persa al-Jwarizmi) 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.

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. Tambin
existen ejemplos de ndole matemtico, como el algoritmo de la divisin para calcular el cociente de dos nmeros,
el algoritmo de Euclides para calcular el mximo comn divisor de dos enteros positivos, o el mtodo de Gauss
para resolver un Sistema lineal de ecuaciones.

Cuando escribimos un programa de computadora, generalmente estamos llevando a cabo un mtodo que se ha
inventado para resolver algn problema previamente. Este mtodo es a menudo independiente de la computadora
y es probable que sea igualmente apropiado para muchas tipas de computadora y muchos lenguajes de
computadora. Es el mtodo, en el programa de computacin, el que nosotros debemos estudiar para aprender
cmo se est tratando de resolver el problema. El trmino algoritmo se usa en la informtica para describir un
mtodo problema-solucin conveniente para la aplicacin en un programa de computadora.

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:

1. Carcter finito. "Un algoritmo siempre debe terminar despus de un nmero finito de pasos".
2. Precisin. "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".
3. 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."
4. Salida. "Un algoritmo tiene una o ms salidas: cantidades que tienen una relacin especfica con las
entradas".
5. 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".

A partir del carcter finito y de la salida se deduce que ante una misma situacin inicial (o valores de entrada) un
algoritmo debe proporcionar siempre el mismo resultado (o salida), con excepcin de los algoritmos probabilistas.

Medios de expresin 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. El usar pseudocdigo y diagramas de flujo evita muchas ambigedades del lenguaje
natural. Dichas expresiones son formas ms estructuradas para representar algoritmos; no obstante, se
mantienen independientes de un lenguaje de programacin especfico.

La descripcin de un algoritmo usualmente se hace en tres niveles:

1. Descripcin de alto nivel. Se establece el problema, se selecciona un modelo matemtico y se explica el


algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
2. Descripcin formal. Se usa pseudocdigo para describir la secuencia de pasos que encuentran la
solucin.
3. Implementacin. Se muestra el algoritmo expresado en un lenguaje de programacin especfico o algn
objeto capaz de llevar a cabo instrucciones.

Pseudocdigo

Pseudocdigo es la descripcin de un algoritmo que asemeja a un lenguaje de programacin, pero con algunas
convenciones del lenguaje natural. Pseudo o seudo, significa falso, imitacin y Cdigo se refiere a las
instrucciones escritas en el lenguaje de programacin; Pseudocdigo no es realmente un cdigo sino una
imitacin y una versin abreviada de instrucciones reales para la computadora.

Los Pseudocdigos utilizan palabras clave como:

DO (hacer), IF THEN ELSE (si entonces sino) ENDIF (fin de s), DO UNTIL (hacer hasta) etc.

Diagrama 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 (International Standard Organization) y ANSI
(American National Standards Institute)

Los diagramas de flujo son usados para representar algoritmos pequeos, ya que abarcan mucho espacio y su
construccin es laboriosa. Por su facilidad de lectura son usados como introduccin a los algoritmos, descripcin
de un lenguaje y descripcin de procesos a personas ajenas a la computacin. Un diagrama de flujo debe ilustrar
grficamente los pasos o procesos a seguir para alcanzar la solucin de un problema.

Etapas en la construccin de un diagrama de flujo.

1. Todo diagrama de flujo debe tener un Inicio y un Fin.


2. Las lneas utilizadas para indicar la direccin del flujo del diagrama deben ser
Rectas, Verticales y Horizontales. NO pueden ser inclinadas o cruzadas.
3. Todas las lneas que indiquen la direccin del flujo debern estar conectadas por
medio de un smbolo que exprese lectura, proceso, decisin, impresin o fin.
4. La notacin utilizada en el diagrama de flujo debe ser independiente del lenguaje
de programacin.
5. El diagrama de flujo debe ser construido de arriba hacia abajo y de izquierda a
derecha.
6. Si el diagrama requiere ms de una hoja, debemos utilizar los conectores
adecuados y enumerar las pginas convenientemente.
7. No puede llegar ms de una lnea a un smbolo.

Ejemplo.

Disear un algoritmo correspondiente que dado como dato la calificacin de un alumno en un examen escriba
Aprobado si su calificacin es mayor que 8 y Reprobado en caso contrario.

Solucin:

Dato: CAL donde CAL es una variable de tipo real que expresa la calificacin del alumno.
1. Leer CAL

2. Si CAL > 8

ENTONCES escribir "Aprobado"

SINO Escribir "Reprobado"

3. FIN SI

ESTRUCTURAS DE CONTROL.

Las estructuras lgicas bsicas necesarias para confeccionar un programa se reduce en tres: SECUENCIALES,
SELECTIVAS Y REPETITIVAS

Estructuras secuenciales

Estructura DO - END (INICIO - FIN)

DO

accin A

accin B

accin C

END

Estructuras selectivas.

Las estructuras algortmicas selectivas que se utilizan para la toma de decisiones lgicas las podemos clasificar
de la siguiente manera:

SI ENTONCES que es una estructura selectiva simple.

SI ENTONCES / SINO que es una estructura selectiva doble

SI MLTIPLE que es una estructura selectiva mltiple.


Aqu podemos observar una estructura SI ENTONCES/SINO la
cual permite que el flujo del diagrama se bifurque por dos ramas
diferentes en el punto de la toma de decisiones.

En lenguaje algortmico se expresa as:

SI condicin (verdadera)

entonces

Hacer operacin 1

sino

Hacer operacin 2

Fin de la condicional

A continuacin, se muestran las otras estructuras selectivas

Estructura selectiva simple Estructura selectiva si mltiple


Estructuras repetitivas

Estructura repetitiva DOWHILE (mientras - hacer)

DOWHILE condicin

accin1

accin2

.........

END DO

El seudocdigo significa: "Mientras la condicin sea verdadera hacer la o las acciones; cuando sea falsa, terminar
el bucle". Puede ocurrir que el bucle no se ejecute ni una sola vez en el caso de que la condicin no se cumpla
inicialmente.

Estructura repetitiva DOUNTIL (repetir - hasta)

DOUNTIL condicin

accin1

accin2

........

END DO

El seudocdigo significa: "Repetir la condicin y hacer la o las acciones hasta que la condicin sea verdadera y
terminar el bucle".

Tanto en DOWHILE como en DOUNTIL se necesita que el bucle contenga al menos una instruccin que cambie
la condicin que controla el bucle. Si no hubiera el bucle continuara indefinidamente. Estas estructuras se usan
cuando No sabemos el nmero de veces que se repetir el ciclo.
La estructura REPETIR.

La estructura REPETIR es la estructura algortmica adecuada para utilizar en


un ciclo que se ejecutar un nmero definido de veces. Por ejemplo, cuando
calculamos las nminas de una empresa, tenemos que sumar los sueldos de
N empleados de la misma. Podemos calcular el promedio de calificaciones
de un grupo de alumnos sumando todas las calificaciones y dividir entre el
nmero de alumnos o tambin sacar el promedio de cada alumno segn sus
calificaciones mensuales. En todos los casos sabemos de antemano cuntas
veces tenemos que repetir una determinada operacin.

V es una variable de control

VI es el valor inicial

VF es el valor final

INC es el incremento

El formato es:

FOR variable = expresin1 TO expresin2 [STEP expresin3]

DO accin

END FOR

STEP expresin3 es opcional y es un incremento (positivo o negativo)

Anda mungkin juga menyukai