A partir de la siguiente información deben realizar un resumen en el cuaderno para la próxima clase (Si desean ampliar la información de algún texto o página en internet lo pueden hacer)
INTRODUCCIÓN A LOS ALGORITMOS
¿QUÉ ES ALGORITMO?
La palabra algoritmo se deriva de la traducción al latín de la palabra árabe
alkhowarizmi, nombre de un matemático y astrónomo árabe que escribió un tratado
sobre manipulación de números y ecuaciones en el siglo IX.
Un algoritmo es una serie de pasos organizados que describe el proceso que se
debe seguir, para dar solución a un problema específico.
CLASIFICACIÓN Y
TIPOS DE ALGORITMOS
Se ha clasificado a
los algoritmos de diversas formas, de acuerdo con algunos de sus atributos. Por
ejemplo:
A)
Según el sistema
de signos con el que describen los pasos a seguir, se reconocen:
–Algoritmos
cualitativos: cuando se hace a través de palabras, es decir, las
instrucciones son verbales. Sucede, por ejemplo, con recetas de cocina.
–Algoritmos
cuantitativos: cuando se hace a través de cálculos numéricos. Se puede
hacer un algoritmo, por ejemplo, para obtener la raíz cuadrada de un número.
B)
Según su función,
los algoritmos pueden ser:
–Algoritmos de
ordenamiento: secuencian los elementos que ingresan a partir de un cierto
orden, en general, según un orden numérico o léxico.
–Algoritmos de
búsqueda: al contrario de realizar operaciones o secuenciar elementos, se
dedica a encontrar dentro de una lista que ingresa, uno o varios elementos en
particular que cumplan con el conjunto de condiciones dadas.
–Algoritmos de
encaminamiento: deciden de qué modo se deberá transmitir algo que llega, y
cómo seguirá un conjunto de pasos encadenados. Se dividen fundamentalmente
entre adaptativos y estáticos, los primeros con
cierta capacidad de aprendizaje y ajuste a la circunstancia, mientras que los
segundos funcionan mecánicamente, siempre del mismo modo. Es importante decir
que los algoritmos de encaminamiento cuentan con una propia subdivisión,
según el camino que se toma para que la transmisión llegue de manera efectiva
(ejemplos de estos tipos son: por el camino más corto, de manera óptima, basado
en el flujo).
C)
También los
algoritmos han sido clasificados según la estrategia que se
utiliza para llegar al resultado. Veamos algunos ejemplos:
–Algoritmos probabilísticos:
no se puede estar seguro de la exactitud de la respuesta que darán. Se agrupan
en distintos subtipos, pero con esa premisa: o bien presentan soluciones
aproximadas del problema, o bien presentan soluciones que pueden ser correctas
pero también erróneas.
–Algoritmo
cotidiano: es el que se da en la vida común de las personas, no se aplica
en sistemas informáticos ni en nada ajeno al día a día. Muchas de las
decisiones que se toman desde que uno se despierta por la mañana pertenecen a
este grupo.
–Algoritmo
heurístico: abandona alguno de los objetivos como recurso para terminar
llegando a la solución. En general, son utilizados cuando no existe una
solución mediante las vías tradicionales.
–Algoritmo de
escalada: se comienza con una solución insatisfactoria (que no cumple la
entrada y la salida), y se la va modificando aproximándose a lo que se busca.
En algún momento, estaremos cerca de (o llegaremos a) la solución correcta.
–Algoritmo voraz:
Con la idea de llegar a una solución óptima definitiva, elige analizar cada
paso como único y elegir la solución óptima para ese paso.
–Algoritmo
determinista: es completamente lineal (cada paso tiene un paso sucesor y un
paso predecesor) y por lo tanto predictivo, si se conocen sus entradas y su
forma de proceder. El algoritmo de Euclides, que permite averiguar el máximo
común divisor entre dos números, responde a este tipo. Se distinguen de
los no deterministas, donde el algoritmo tiene un comportamiento en
forma de árbol.
LENGUAJES ALGORÍTMICOS
Es una serie de
símbolos y reglas que se utilizan para describir de manera explícita un
proceso.
Tipos de Lenguajes Algorítmicos
•Gráficos: Es la
representación gráfica de las operaciones que realiza un algoritmo (diagrama de
flujo).
•
•No Gráficos:
Representa en forma descriptiva las operaciones que debe realizar un algoritmo
(pseudocódigo).
Diagrama de flujo
Se basan en la
utilización de diversos símbolos para representar operaciones específicas. Se
les llama diagramas de flujo porque los símbolos utilizados se conectan por
medio de flechas para indicar la secuencia de la operación.
Diagramas
estructurados (Nassi-Schneiderman)
•El diagrama estructurado N-S también conocido como
diagrama de Chapin es como un diagrama de flujo en el que se
omiten las flechas de unión y las cajas son contiguas. Las acciones sucesivas
se pueden escribir en cajas sucesivas y como en los diagramas de flujo, se
pueden escribir diferentes acciones en una caja.
•Los diagramas
estructurados, son una técnica que permite formular algoritmos mediante una
representación geométrica y de asignación de espacios de un bloque específico.
Pseudocodigo
• Mezcla de lenguaje de programación y español (o inglés
o cualquier otro idioma) que se emplea, dentro de la programación estructurada,
para realizar el diseño de un programa. En esencial, el pseudocódigo se
puede definir como un lenguaje de especificaciones de algoritmos.
• Es la
representación narrativa de los pasos que debe seguir un algoritmo para dar
solución a un problema determinado. El pseudocódigo utiliza palabras que
indican el proceso a realizar.
Clase sumar_números
Método
Ppal()
Real N1,N2,SUMA
IMPRIMA “DIGITE PRIMER NUMERO”
LEA N1
IMPRIMA “DIGITE SEGUNDO NUMERO”
LEA N2
SUMA= N1+ N2
IMPRIMA “LA SUMA ES”, SUMA
Fin Método
Fin Clase
METODOLOGÍA PARA LA CREACIÓN DE ALGORITMOS
Ahora que ya sabemos
qué es un algoritmo, vamos a estudiar la metodología para la solución de un
problema mediante un ordenador. La creación de un algoritmo y su programación
es una etapa, pero como programador debes realizar varios pasos antes y
después.
El computador es una
máquina que por sí sola no puede hacer nada, necesita ser programada, es decir,
introducirle instrucciones u órdenes que le digan lo que tiene que hacer. Un
programa es la solución a un problema inicial, así que todo comienza allí: en el
Problema. El proceso de programación es el siguiente: Dado un determinado
problema el programador debe idear una solución y expresarla usando un
algoritmo (aquí es donde entra a jugar); luego de esto, debe codificarlo en un
determinado lenguaje de programación y por último ejecutar el programa en el
computador el cual refleja una solución al problema inicial. Esto es a grandes
rasgos lo que hace el programador de computadores.
La parte que corresponde a este manual es la de: Dado un determinado problema debemos idear una solución y expresarla usando un ALGORITMO!.
PASOS PARA REALIZAR ALGORITMOS
La parte que corresponde a este manual es la de: Dado un determinado problema debemos idear una solución y expresarla usando un ALGORITMO!.
PASOS PARA REALIZAR ALGORITMOS
Para la
realización de un algoritmo es necesario realizar una secuencia de pasos para
llegar a cumplir con la resolución de un problema dado. Para ello, definiremos
los siguientes pasos:
1.
Análisis
previo del Problema: Se debe realizar un análisis del funcionamiento del
problema antes que se realice cualquier algoritmo.
2.
Definición
de Requerimientos: Los problemas a solucionar, esto es, por ejemplo, el
sumar dos números, multiplicar dos matrices, ordenar una lista de números,
generar un reporte, etc.
3.
Identificación
de los Módulos: La identificación de los módulos es tan importante como
la identificación correcta de los requerimientos, esto porque la correcta identificación
de los módulos simplifica considerablemente la realización de los algoritmos
que darán solución a los requerimientos identificados en el paso anterior.
4.
Realización
de los Algoritmos: El
algoritmo deberá cumplir con las características que se indicaron para
posteriormente implementarse en un lenguaje de programación comprensible por
una computadora.
5.
Implementación
de los Algoritmos: La implementación de los algoritmos se debe realizar en
un lenguaje de programación para que una computadora pueda comprender las
instrucciones que el algoritmo modela para así poder ejecutarlas y lograr el
resultado esperado.
En el último
paso ya podemos hablar de una aplicación o programa de computadora, que estará
compuesto por una serie de instrucciones que ordenadas una tras otra logran
representar los algoritmos diseñados y dar así solución a los requerimientos
identificados.
EJEMPLOS:



HOLA PROFESORA SONIA. BUENAS NOCHES
ResponderEliminarUNA PREGUNTA... QUE HAY QUE TENER EN CUENTA PARA LA PRACTICA DEL DIA DE MAÑANA. UN ABRAZO. FELIZ NOCHE