Sie sind auf Seite 1von 10

ALGORITMOS

1. DEFINICIN DE ALGORITMO
Un algoritmo es un conjunto finito de instrucciones o pasos que sirven para
ejecutar una tarea o resolver un problema.
A. TIPOS
Algoritmos estticos, es decir, algoritmos que funcionan siempre igual,
independientemente del tipo de problema tratado. Por ejemplo, los sistemas

basados en el mtodo de resolucin.


Algoritmos probabilsticos, es decir, algoritmos que no utilizan valores
de verdad booleanos sino continuos. Por ejemplo, los sistemas basados en

lgica difusa.
Algoritmos adaptativos, es decir, algoritmos con cierta capacidad de

aprendizaje. Por ejemplo, los sistemas basados en redes neuronales.


Deterministico, s en cada paso del algoritmo, es posible predecir la salida

para una entrada dada.


No determinsticos, s existe uno ms pasos en el algoritmo, para el cual
es posible predecir cual ser la salida.

B. CARACTERSTICAS DE LOS ALGORITMOS:


Las caractersticas fundamentales que debe cumplir todo algoritmo son:
Un algoritmo debe ser preciso e indicar el orden de realizacin de cada paso.
Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe
obtener el mismo resultado cada vez.
Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en algn
momento;

sea,

debe

tener

un

numero

2. TIPOS DE LENGUJES ALGORITMICOS

finito

de

pasos.

Grficos: Es la representacin grfica de las operaciones que realiza un


algoritmo (diagrama de flujo).

No Grficos: Representa en forma descriptiva las operaciones que debe


realizar un algoritmo (pseudocodigo).

3. METODOLOGIA PARA LA SOLUCION DE PROBLEMAS


Existen muchos tipos de metodologas, como la metodologa de investigacin,
metodologa de enseanza-aprendizaje, etc., as como la metodologa de solucin
de problemas, que aplicamos constantemente en la vida diaria. Pero en este caso
hablaremos especficamente de la solucin de problemas que podemos resolver
mediante el uso de la computadora.
La resolucin de los problemas consta de cinco etapas que garantizan la llegada
correcta a la solucin: identificacin del problema, planteamiento de alternativas
de solucin, eleccin de una alternativa, desarrollo de la solucin y evaluacin de
sta.
1. Identificacin del problema
La identificacin del problema es una fase muy importante en la metodologa, pues
de ella depende el desarrollo ulterior en busca de la solucin. Un problema bien
delimitado es una gran ayuda para que el proceso general avance bien; un
problema mal definido provocar desvos conceptuales que sern difciles de
remediar posteriormente. En esta etapa es fundamental el anlisis de la
informacin inicial (entrada) con el fin de distinguir los datos pertinentes de los
que no lo son, de manera que se pueda elegir la configuracin ms conveniente
respecto a las soluciones posibles. Tambin deben definirse los datos de salida que
garanticen la continuidad del proceso para que sea ms fcil eliminar las
expectativas negativas.
2. Planteamiento de alternativas de solucin
Despus de la definicin del problema y del anlisis de los datos de entrada, el
proceso contina con el anlisis de las alternativas de solucin. Por lo general, la
solucin de un problema puede alcanzarse por distintas vas. Es til tratar de

plantear la mayor cantidad de alternativas posibles de solucin, pues de esta forma


las probabilidades aumentan a favor de encontrar la va correcta. Se debe destacar
que no es conveniente extender demasiado el nmero de alternativas, pues si el
nmero de stas es demasiado alto, se presentar una mayor dificultad para elegir
la mejor de todas, que es en definitiva el objetivo del proceso.
3. Eleccin de una alternativa
Despus de tener todo el repertorio de alternativas, es necesario pasar a otra etapa:
la eleccin de la mejor entre todas las posibilidades. Esta fase es muy importante
porque de la eleccin realizada depende el avance final hasta la solucin. La
orientacin hacia delante supone la irreversibilidad si la decisin es acertada o una
"reversibilidad onerosa", pues si la decisin no es acertada, es necesario retroceder,
lo que afecta la "optimidad" del proceso.
Por lo tanto, es necesario que cada alternativa sea bien analizada para que la toma
de decisiones sea bien justificada. Debers elegir la alternativa que sea la ms
adecuada para la solucin del problema, tomando en cuenta las caractersticas del
problema y las caractersticas que deber tener la solucin, as como los elementos,
datos o informacin con la que cuentas.
4. Desarrollo de la solucin
Despus de decidir cul es la mejor alternativa de todas, se llega a la etapa de la
solucin. En esta fase, a partir de los datos relacionados con la alternativa
seleccionada, se aplican las operaciones necesarias para solucionar el problema. La
seleccin de los procesos tambin debe ser determinada en funcin de la
optimidad, es decir, las operaciones deben llegar a la solucin por el camino ms
corto para garantizar la mayor eficiencia en el funcionamiento. Si la alternativa es
la ptima, llevar a la solucin deseada que fue prevista en la identificacin del
problema.
5. Evaluacin de la solucin
Luego de haber desarrollado la solucin queda an una etapa, que es la evaluacin.
En los procesos industriales a este procedimiento se le llama control de la calidad y
consiste en determinar que la solucin obtenida 'es lo que se esperaba conseguir
comprobando que el resultado sea correcto. En esta fase se deben "pulir" los

procesos ya realizados y tratar de llevarlos a un grado mayor de optimidad, pues el


algoritmo ms eficiente en la solucin de un problema es el que llega a su objetivo
final con la mayor economa de procedimientos que sea posible. A continuacin,
puedes observar un ejemplo de la aplicacin de la metodologa a la solucin de un
problema simple. Es importante saber que los problemas complejos tambin se
resuelven con esta estructura.
4. REGLAS DE PROGRAMACION
REGLAS DE PROGRAMACIN EN C++:
Las instrucciones deben de escribirse en minsculas.
2. Los comentarios del programa deben de colocarse entre los smbolos // , */ /*.
3. Toda instruccin debe terminar en punto y coma (;).
4. No puedes usar palabras claves como variables.
5. El programa debe ser guardado antes de compilarse.
ENTORNO DE TRABAJO:
USO DE LAS DIRECTIVAS Y ARCHIVOS DE CABECERA:
Las directivas de un programa se utilizan para indicar al compilador las funciones
que puede aceptar dentro del programa.
Estas siempre van colocadas al inicio del programa y se antepone a ellas el smbolo
#.
Las directivas ms usadas son:
#define
#include
#inlude<iostream> : se utiliza para poder usar las funciones cout y cin .
Std::cout : sirve para mostrar datos en pantalla utiliza los operadores << que
indican que indica q se visualizara, lo que esta despus de ella ya sea texto o varias
unidades.
Sintaxis: stdd::cout<<el mundo es grande;
Std::cin : sirve para leer datos que el usuario introduce desde el teclado usa los

operadores >> indican que esa variable se le agrega un valor


Sintaxis: cin>>variables;
5. ENTIDADES PARA EL DESARROLLO DE ALGORITMOS
A. TIPOS DE DATOS
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple
carcter, tal como b, un valor entero tal como 35. El tipo de dato determina la
naturaleza del conjunto de valores que puede tomar una variable.

Tipos de Datos Simples


Datos Numricos: Permiten representar valores escalares de forma
numrica, esto incluye a los nmeros enteros y los reales. Este tipo de datos

permiten realizar operaciones aritmticas comunes.


Datos Lgicos: Son aquellos que solo pueden tener dos valores (cierto o
falso) ya que representan el resultado de una comparacin entre otros datos

(numricos o alfanumricos).
Datos Alfanumricos (String): Es una secuencia de caracteres
alfanumricos que permiten representar valores identificables de forma
descriptiva, esto incluye nombres de personas, direcciones, etc. Es posible
representar nmeros como alfanumricos, pero estos pierden su propiedad
matemtica, es decir no es posible hacer operaciones con ellos. Este tipo de
datos se representan encerrados entre comillas.

B. EXPRESIONES
Las expresiones son combinaciones de constantes, variables, smbolos de
operacin, parntesis y nombres de funciones especiales.
Por ejemplo: x + (y+ 3)/z
Cada expresin toma un valor que se determina tomando los valores de las
variables y constantes implicadas y la ejecucin de las operaciones indicadas.
Una expresin consta de operadores y operandos.

C. IDENTIFICADORES

Los identificadores representan los datos de un programa (constantes, variables,


tipos de datos). Un identificador es una secuencia de caracteres que sirve para
identificar una posicin en la memoria de la computadora, que nos

permite

acceder a su contenido.
Ejemplo:Nombre Num_hrs Calif2
Reglas para formar un identificador
Debe comenzar con una letra (A a Z, maysculas o minsculas) y no deben
contener espacios en blanco.
Letras, dgitos y caracteres como la subraya ( _ ) estn permitidos despus del
primer carcter.
La longitud de identificadores puede ser de hasta 8 caracteres.

6. HERRAMIENTAS PARA DISEAR ALGORITMOS


Las dos herramientas ms utilizadas para disear algoritmos son el Pseudocdigo y
el Diagrama de flujo.

1. PSEUDOCDIGO
Es un lenguaje simplificado para describir un algoritmo utilizando una mezcla de
frases en lenguaje comn, y palabras claves que indican el inicio y el fin del
algoritmo y las instrucciones especficas a realizar.
A. VENTAJAS
En ventajas, slo encontr las que tiene en un diagrama de flujo estas:
Se puede ejecutar en un ordenador (con un IDE como por ejemplo SLE,
LPP, PilatoX, Maruga Script, Seudocdigo oPSeInt. Otros Ides de
consideracin son Inter-P y Algor)
Es una forma de representacin sencilla de utilizar y de manipular.

Facilita el paso del programa al lenguaje de programacin.


Es independiente del lenguaje de programacin que se vaya a utilizar.
Es un mtodo que facilita la programacin y solucin al algoritmo del
programa.

B. PARTES
CABECERA.

Programa.
Mdulo.
Tipos de datos.
Constantes.
Variables.

CUERPO.

Inicio.
Instrucciones.
Fin.
7. TIPO DE ESTRUCTURA DE PROGRAMACION
A. ESTRUCTURAS BASICAS Y SECUENCIALES
Estructura Secuencial: Indica que las instrucciones de un programa se
ejecutan una despus de la otra, en el mismo orden en el cual aparecen en el
programa. Se representa grficamente como una caja despus de otra,
ambas con una sola entrada y una nica salida. Las cajas A y B pueden ser
definidas para ejecutar desde una simple instruccin hasta un mdulo o

programa completo, siempre y cuando stos tambin sean programas


apropiados.
Estructura Selectiva: Tambin conocida como la estructura si verdadero
- falso, plantea la seleccin entre dos alternativas con base en el resultado de
la evaluacin de una condicin; equivale a la instruccin IF de todos los
lenguajes de programacin y se representa grficamente de la siguiente
manera: En el diagrama de flujo anterior, C es una condicin que se evala;
A es la accin que se ejecuta cuando la evaluacin de esta condicin resulta
verdadera y B es la accin ejecutada cuando el resultado de la evaluacin
indica falso. La estructura tambin tiene una sola entrada y una sola salida;
y las funciones A y B tambin pueden ser cualquier estructura bsica o
conjunto de estructuras.
B. ESTRUCTURAS CONDICIONALES
Las estructuras condicionales comparan una variable contra otro(s)valor (es), para
que en base al resultado de esta comparacin, se siga un curso de accin dentro del
programa. Cabe mencionar que la comparacin se puede hacer contra otra variable
o contra una constante, segn se necesite.
C. ESTRUCTURAS REPETITIVAS E ITERATIVA
Estructura Repetitiva (Iterativa): Tambin llamada la estructura hacer mientras que, corresponde a la ejecucin repetida de una instruccin mientras que se cumple
una determinada condicin. El diagrama de flujo para esta estructura es el
siguiente: Aqu el bloque A se ejecuta repetidamente mientras que la condicin C se
cumpla o sea cierta. Tambin tiene una sola entrada y una sola salida; igualmente A
puede ser cualquier estructura bsica o conjunto de estructuras.
8. DIAGRAMA DE FLUJOS
A. VENTAJAS

Favorecen la comprensin del proceso al mostrarlo como un dibujo. El


cerebro humano reconoce muy fcilmente los dibujos. Un buen diagrama de
flujo reemplaza varias pginas de texto.

Permiten identificar los problemas y las oportunidades de mejora del


proceso. Se identifican los pasos, los flujos de los reprocesos, los conflictos de
autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisin.

Muestran las interfaces cliente-proveedor y las transacciones que en ellas se


realizan, facilitando a los empleados el anlisis de las mismas.

Son una excelente herramienta para capacitar a los nuevos empleados y


tambin a los que desarrollan la tarea, cuando se realizan mejoras en el
proceso.

Al igual que el pseudocdigo, el diagrama de flujo con fines de anlisis


de algoritmos de programacin puede ser ejecutado en un ordenador, con
un IDE como Free DFD.
B. DESVENTAJAS
Diagramas complejos y detallados suelen ser laboriosos en su planteamiento

y diseo.
Acciones a seguir tras la salida de un smbolo de decisin, pueden ser

difciles de seguir si existen diferentes caminos.


No existen normas fijas para la elaboracin de los diagramas de flujo que

permitan incluir todos los detalles que el usuario desee introducir.


C. RECOMENDACIONES
Recomendaciones para el diseo de diagramas de flujo

Se deben usar solamente lneas de flujo horizontales y/o verticales.

Se debe evitar el cruce de lneas utilizando los conectores.

Se deben usar conectores slo cuando sea necesario.

No deben quedar lneas de flujo sin conectar.

Se deben trazar los smbolos de manera que se puedan leer de arriba hacia
abajo y de izquierda a derecha.

Todo texto escrito dentro de un smbolo deber ser escrito claramente,


evitando el uso de muchas palabras.

Das könnte Ihnen auch gefallen