En matemáticas, lógica, ciencias de la computación y
disciplinas relacionadas, un algoritmo (del griego y latín, dixit algorithmus y
éste a su vez del matemático persa Al-Juarismi1 ) es un conjunto prescrito de
instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar
una actividad mediante pasos sucesivos que no generen dudas a quien deba
realizar dicha actividad.2 Dados un estado inicial y una entrada, siguiendo los
pasos sucesivos se llega a un estado final y se obtiene una solución. Los
algoritmos son el objeto de estudio de la algoritmia.1
En la vida cotidiana, se emplean algoritmos frecuentemente
para resolver problemas. Algunos ejemplos son los manuales de usuario, que
muestran algoritmos para usar un aparato, o las instrucciones que recibe un
trabajador por parte de su patrón. Algunos ejemplos en matemática son el
algoritmo de multiplicación, para calcular el producto, el algoritmo de la
división para calcular el cociente de dos números, el algoritmo de Euclides
para obtener el máximo común divisor de dos enteros positivos, o el método de
Gauss para resolver un sistema de ecuaciones lineales.
DEFINICIÓN FORMAL DEL ALGORITMO
En general, no existe ningún consenso definitivo en cuanto a
la definición formal de algoritmo. Muchos autores los señalan como listas de
instrucciones para resolver un cálculo o un problema abstracto, es decir, que
un número finito de pasos convierten los datos de un problema (entrada) en una
solución (salida).1 2 3 4 5 6 Sin embargo cabe notar que algunos algoritmos no
necesariamente tienen que terminar o resolver un problema en particular. Por
ejemplo, una versión modificada de la criba de Eratóstenes que nunca termine de
calcular números primos no deja de ser un algoritmo.7
A lo largo de la historia varios autores han tratado de
definir formalmente a los algoritmos utilizando modelos matemáticos. Esto fue
realizado por Alonzo Church en 1936 con el concepto de "calculabilidad
efectiva" basada en su cálculo lambda y por Alan Turing basándose en la
máquina de Turing. Los dos enfoques son equivalentes, en el sentido en que se
pueden resolver exactamente los mismos problemas con ambos enfoques.8 9 Sin
embargo, estos modelos están sujetos a un tipo particular de datos como son
números, símbolos o gráficas mientras que, en general, los algoritmos funcionan
sobre una vasta cantidad de estructuras de datos.3 1 En general, la parte común
en todas las definiciones se puede resumir en las siguientes tres propiedades
siempre y cuando no consideremos algoritmos paralelos.
REGLAS DE LA CONSTRUCCIÓN DE ALGORITMOS
1. Un algoritmo es un conjunto de
instrucciones donde llevas un orden para llegar a la solución del problema, son
independientes de los lenguajes de programación, en cada problema el algoritmo
puede escribirse y luego ejecutarse en un lenguaje.
2. Características para la
construcción del algoritmo Debe ser Preciso, porque cada uno de sus pasos
debe indicar de manera precisa e inequívoca que se debe hacer. Debe tener un
limite, porque un algoritmo debe tener un número limitado de pasos. Debe ser
Definido, porque debe producir los mismos resultados para las mismas
condiciones de entrada. Puede tener cero o más elementos de entrada. Debe
producir un resultado. Los datos de salida serán los resultados de efectuar las
instrucciones.
3. Características para la construcción
del diagrama de flujo en un algoritmo El diagrama debe tener un inicio y un
fin y se representa con un ovalo Las líneas utilizadas para indicar la
dirección del diagrama deben ser rectas, verticales y horizontales y no deben
ser inclinadas ni cruzadas. Todas las líneas utilizadas para indicar la
dirección del diagrama deben estar conectadas.
4. El diagrama de flujo debe ser
construido de arriba hacia abajo y de izquierda a derecha Si el diagrama de
flujo requiriera mas de una hoja para su construcción, debemos utilizar los
conectores adecuados y enumerar las paginas convenientemente. No puede llevar
mas de una línea a un símbolo.
5. EJEMPLOS DE ALGORITMOS Calcular el
área de un rectángulo Inicio Variable x,y,z Pedir base Leer x Pedir
altura Leer y Calcular la área z=(x)(y) Imprimir el área en pantalla
Fin Inicio X,Y, Z Pedir base Pedir altura Z=(X)(Y) Z Fin
6. Receta del cereal Inicio
Variable (L, P, CE, CU) Escoger el cereal Sacar la leche del refrigerador
Agarrar un plato de la cocina Agarrar una cuchara de la cocina Servir la
leche y el cereal en el plato Mezclar Fin Inicio L,P,CE,CU Escoger el
cereal Sacar la leche del refrigerador Agarrar un plato de la cocina Mezclar
Fin Agarrar una cuchara de la cocina Servir la leche y el cereal en el plato
7. Calcular la suma de dos números
Inicio Variable A, B, R Leer A y B Calcular la suma R=A + B Imprimir el
Resultado en pantalla Fin Inicio A,B,R Leer A y B R=A+B R Fin
HERRAMIENTAS PARA CREAR UN ALGORITMO
Para representar un algoritmo se debe utilizar algún método
que permita independizar dicho algoritmo
del lenguaje de programación elegido. Ello permitirá que un algoritmo pueda ser codificado indistintamente en
cualquier lenguaje . Para conseguir este objetivo se precisa que el algoritmo sea representado
gráfica o numéricamente , de modo que las sucesivas acciones no dependan de la sintaxis
de ningún lenguaje de programación , sino que la descripción pueda servir fácilmente para su transformación en
un programa , es decir ,su codificación.
Los métodos usuales para representar un algoritmo son:
- Diagramas
de FLUJO
- PseudoCódigo
- Diagrama
N-S
Un diagrama de flujo (flowchart) es una de
las técnicas de representación de algoritmo más antigua y a la vez más utilizada , aunque se empleo ha
disminuido considerablemente ,
sobre todo desde la aparición de lenguajes de programación estructurados. Un
diagrama de flujo es un
diagrama que utiliza los símbolos (cajas) estándar mostrados en la figura 1 y que tiene los pasos del
algoritmo escritos en esas cajas unidas por flechas , denominadas líneas de flujo, que
indican la secuencia en que se deben ejecutar.
FIGURA 1:
La figura 2 es un diagrama de flujo básico.
FIGURA 2:
El diagrama anterior representa la resolución de un programa que deduce el salario neto de un trabajador a partir de la lectura del nombre, horas trabajadas, precio de la hora , y sabiendo que los impuestos aplicados son el 25 por 100 sobre el salario bruto.
Los símbolos estándar normalizados por ANSI (abreviatura de America National Standard Institute) son muy variados .
REGLAS PARA EL CURSO DE ALGORITMOS
El Diagrama de dibuja de arriba hacia abajo, las figuras se
conectan con flechas, en caso de faltar espacio en el papel, se usan conectores
para saber donde continua el diagrama.
En un Símbolo de Entrada/Salida debe especificarse si se
esta usando para entrada o salida en el encabezado del símbolo
El Símbolo de entrada puede representar la entrada de varias
variables a la vez pero deben estar separadas por comas
El símbolo de salida puede representar la salida de varias
variables a la vez pero deben estar separadas por comas
El Proceso Puede incluir hasta 3 procesos separados por
línea
Todo diagrama debe tener un terminal de INICIO y uno de
FINAL
Los Rombos de Decisión solo pueden tener una flecha de
llegada, pero deben tener 2 salidas obligatorias y el participante debe indicar
con un SI el flujo en caso el TEST sea verdadero y con un NO el flujo a seguir
en caso el TEST sea Falso.
te quedo bien
ResponderEliminarnuy bien muy solo que algunas letras estan muy chicas y el fondo esta padre
ResponderEliminarmuy bueno y que buen fondo
ResponderEliminarmuy bien te quedo padre tu fondo me gusta :)
ResponderEliminar