2. Definición
Algoritmo (del latín, dixit algorithmus y éste del matemático
persa al-Jwarizmil) es un conjunto ordenado y finito de
operaciones que permite hallar la solución de un problema.
Es un método para encontrar la solución a algún problema.
Su importancia radica en mostrar la manera de llevar a cabo
procesos y resolver problemas matemáticos; al igual que las
funciones matemáticas, los algoritmos reciben una entrada y
la transforman en una salida ("efecto caja negra"). Sin
embargo, para que un algoritmo pueda ser considerado
como tal, debe ser definido, finito y eficiente.
3. Formas de Representación de
los algoritmos
Diagramas de Flujo.
Pseudocodigo
Diagramas estructurados
4. Diagramas de Flujo
Un Diagrama de Flujo representa la
esquematización gráfica de un algoritmo ,
el cual muestra gráficamente los pasos o
procesos a seguir para alcanzar la solución
de un problema . Su correcta construcción
es sumamente importante porque , a partir
del mismo se escribe un programa en
algún Lenguaje de Programación.
5. Pseudocodigo
Es una es una serie de normas léxicas y
gramaticales parecidas a la mayoría de los
lenguajes de programación, pero sin llegar a la
rigidez de sintaxis de estos ni a la fluidez del
lenguaje coloquial. También se le conoce como
falso lenguaje.
Esto permite codificar un programa con mayor
agilidad que en cualquier lenguaje de
programación, con la misma validez semántica,
normalmente se utiliza en las fases de análisis o
diseño de Software, o en el estudio de un
algoritmo.
6. Diagramas estructurados
El diagrama N-S o también conocido como diagrama de Chapin es una
técnica de especificación de algoritmos que combina la descripción
textual, propia del pseudocódigo, con la representación gráfica del
diagrama de flujo.
El diagrama N-S cuenta con un conjunto limitado de símbolos para
representar los pasos del algoritmo, por ello se apoya en expresiones del
lenguaje natural; sin embargo, dado que el lenguaje natural es muy
extenso y se presta para la ambigüedad, solo se utiliza un conjunto de
palabras, a las que se denomina palabras reservadas. Las palabras
reservadas más utilizadas son:
Inicio Fin Leer Escribir
Mientras Repita Hasta Para
Incrementar Decrementar Hacer Función
Entero Real Caracter Cadena
Lógico Retornar
7. Características de los
Algoritmos
Carácter finito. "Un algoritmo siempre debe terminar después de
un número finito de pasos".
Precisión. "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".
Entrada. "Un algoritmo tiene cero o más entradas: cantidades que
le son dadas antes de que el algoritmo comience, o dinámicamente
mientras el algoritmo corre. Estas entradas son tomadas de
conjuntos específicos de objetos".
Salida. "Un algoritmo tiene una o más salidas: cantidades que
tienen una relación específica con las entradas".
Eficacia. "También se espera que un algoritmo sea eficaz, en el
sentido de que todas las operaciones a realizar en un algoritmo
deben ser suficientemente básicas como para que en principio
puedan ser hechas de manera exacta y en un tiempo finito por un
hombre usando lápiz y papel".
8. Ejemplos de Algoritmos
Verificar si una lámpara funciona
INICIO
Lámpara no funciona
SI la lámpara esta enchufada
ENTONCES Verificar si la ampolleta funciona
DE LO CONTRARIO
Conectar lámpara
SI la ampolleta funciona
ENTONCES reemplazar lámpara
DE LO CONTRARIO
REEMPLAZAR ampolleta
FIN SI
FIN SI
FIN
9. Ejemplos de Algoritmos
Calcular el salario neto de un empleado cuando le
retienen un 15% de salario bruto y le entregan un
2.5% de bonificaciones.
INIICIO
LEER Salario Bruto
ret=salbas * 15/100
bon=salbas * 2.5/100
Salnet=salbas – rent + bon
IMPRIMIR salnet
FIN
10. Ejemplos de Algoritmos
Las medidas de una cancha de basketball fue ampliada
en un 15%. Determinar el área total de esa cancha.
INICIO
LEER med_can_fut
ampl = med_can_fut * 15/100
area_tot = med_can_fut + ampl
IMPRIMIR area_tot
FIN
11. Ejemplos de Algoritmos
Calcular el área total de un terreno sabiendo que fue
reducida en un 12%, y luego le fue adicionada un 3%.
INICIO
LEER area_ter
area_tot = area_ter - (area_ter * 0.12) + (area_ter * 0.03)
IMPRIMIR area_tot
FIN