Вы находитесь на странице: 1из 6

25-9-2014 ALGORITMOS

Software en Ingeniera Civil

Gadiel Zurisada Aguilar Garca


ALGORITMOS

DEFINICIN: Un Algoritmo, se puede definir como una secuencia de instrucciones


que representan un modelo de solucin para determinado tipo de problemas. O bien
como un conjunto de instrucciones que realizadas en orden conducen a obtener la
solucin de un problema. Por lo tanto podemos decir que es un conjunto ordenado
y finito de pasos que nos permite solucionar un problema.
Los algoritmos son independientes de los lenguajes de programacin. En cada
problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje de
diferente programacin. El algoritmo es la infraestructura de cualquier solucin,
escrita luego en cualquier lenguaje de programacin.

Programa: Un programa es una serie de instrucciones ordenadas, codificadas en


lenguaje de programacin que expresa un algoritmo y que puede ser ejecutado en
un computador.

CARACTERSTICAS DE UN ALGORITMO: Todo algoritmo debe tener las


siguientes caractersticas:

a) Debe ser Preciso, porque cada uno de sus pasos debe indicar de manera
precisa e inequvoca que se debe hacer.
b) Debe ser Finito, porque un algoritmo debe tener un nmero limitado de
pasos.
c) Debe ser Definido, porque debe producir los mismos resultados para las
mismas condiciones de entrada.
d) Puede tener cero o ms elementos de entrada.
e) Debe producir un resultado. Los datos de salida sern los resultados de
efectuar las instrucciones.

CLASIFICACIN DE ALGORITMOS: Los algoritmos se pueden clasificar en


cuatro tipos:

Algoritmo computacional: Es un algoritmo que puede ser ejecutado en


una computadora. Ejemplo: Frmula aplicada para un clculo de la raz
cuadrada de un valor x.
Algoritmo no computacional: Es un algoritmo que no requiere de una
computadora para ser ejecutado. Ejemplo: Instalacin de un equipo de
sonido.
Algoritmo cualitativo: Un algoritmo es cualitativo cuando en sus pasos o
instrucciones no estn involucrados clculos numricos. Ejemplos: Las
instrucciones para desarrollar una actividad fsica, encontrar un tesoro.
Algoritmo cuantitativo: Una algoritmo es cuantitativo cuando en sus
pasos o instrucciones involucran clculos numricos. Ejemplo: Solucin de
una ecuacin de segundo grado.
PARTES DE UN ALGORITMO: Todo Algoritmo debe tener las siguientes partes:
Entrada de datos, son los datos necesarios que el algoritmo necesita para
ser ejecutado.
Proceso, es la secuencia de pasos para ejecutar el algoritmo.
Salida de resultados, son los datos obtenidos despus de la ejecucin del
algoritmo.
Etapas para la colusin de un problema por medio del computador
1. Anlisis del problema, definicin y delimitacin (macroalgoritmo).
Considerar los datos de entrada, el proceso que debe realiza el computador
y los datos de salida.
2. Diseo y desarrollo del algoritmo (se utiliza pseudocdigo, escritura natural
del algoritmo, diagramas de flujo, etc.)
3. Prueba de escritorio. Seguimiento manual de los pasos descritos en el
algoritmo. Se hace con valores bajos y tiene como fin detectar errores.
4. Codificacin. Seleccin de un lenguaje de programacin y digitacin del
pseudocdigo haciendo uso de la sintaxis y estructura gramatical del
lenguaje seleccionado.
5. Compilacin o interpretacin del programa. El software elegido convierte las
instrucciones escritas en el lenguaje a las comprendidas por el computador.
6. Ejecucin. El programa es ejecutado por la mquina para llegar a los
resultados esperados.
7. Depuracin (debug). Operacin de detectar, localizar y eliminar errores de
mal funcionamiento del programa.
8. Evaluacin de resultados. Obtenidos los resultados se los evala para
verificar si son correctos. (Un programa puede arrojar resultados incorrectos
aun cuando su ejecucin no muestra errores).
Algoritmos cualitativos y algoritmos cuantitativos.
Un algoritmo es cualitativo cuando en sus pasos o instrucciones no estn
involucrados clculos numricos. Las instrucciones para armar un aeromodelo, para
desarrollar una actividad fsica o encontrar el tesoro, son ejemplos de algoritmos
cualitativos.
Los algoritmos cuantitativos involucran clculos numricos.
TCNICAS DE REPRESENTACIN: Para la representacin de un algoritmo, antes
de ser convertido a lenguaje de programacin, se utilizan algunos mtodos de
representacin escrita, grfica o matemtica. Los mtodos ms conocidos son:
Diagramacin libre (Diagramas de flujo).
Diagramas Nassi-Shneiderman.
Pseudocdigo.
Lenguaje natural (espaol, ingls, etc.).
Frmulas matemticas.
Diagramas de flujo.
Es quizs la forma de representacin ms antigua.
Algunos autores suelen llamarlos tambin diagramas de
lgica o flujogramas.
Un diagrama de flujo utiliza cajas estndar.
Diagramas Nassi-Schneiderman o Chapin
Tambin conocidos como Diagramas de Chapin, corresponden a uno de los tipos
de diagramacin estructurada. Las acciones se escriben en rectngulos o cajas
sucesivas. Se pueden escribir diferentes acciones en una caja. La simbologa
utilizada es como vemos en las figuras siguientes.

Pseudocdigo
Es la tcnica que permite expresar la solucin de un problema mediante un
algoritmo escrito en palabras normales de un idioma (por ejemplo, el espaol),
utilizando palabras imperativas. Es comn encontrar en pseudocdigo palabras
como: Inicie, lea, imprima, sume, divida, calcule, finalice. No hay un lxico obligado
para el pseudocdigo, pero con el uso frecuente se han establecido algunos
estndares. Este es un ejemplo de un programa escrito en pseudocdigo:

Inicie
{Calcule el salario neto y deduccin de 6%} {Esto es un comentario}
Lea nombre, horas, valor_hora
Salario_bruto=horas*valor_hora
Deduccion=Salario_bruto*6%
Salario_neto=Salario_bruto Deduccion
Imprima nombre, Salario_bruto, Deduccion, Salario_neto
Finalice
Estructuras secuenciales
La estructura secuencial es aquella en la que una accin sigue a otra en
secuencia. Las operaciones se suceden de tal modo que la salida de una es la
entrada de la siguiente y as sucesivamente hasta el fin del proceso. La asignacin
de esto consiste, en el paso de valores o resultados a una zona de la memoria.
Dicha zona ser reconocida con el nombre de la variable que recibe el valor. La
asignacin se puede clasificar de la siguiente forma:

1. Simples: Consiste en pasar un valor constante a una variable (a 15)


2. Contador: Consiste en usarla como un verificador del nmero de veces que
se realiza un proceso (a a + 1)
3. Acumulador: Consiste en usarla como un sumador en un proceso (a a + b)
4. De trabajo: Donde puede recibir el resultado de una operacin matemtica
que involucre muchas variables (a c + b*2/4).
Un ejemplo de estructura secuencial, como obtener el rea de un tringulo:

Inicio
...
float b, h, a;
printf("Diga la base");
scanf("%f", &b);
printf("Diga la altura");
scanf("%f", &h);
a = (b*h)/2;
printf("El rea del tringulo es %f", a)
...
Fin

Вам также может понравиться