Buscar

sábado, 7 de marzo de 2020

¿Que es un Algoritmo?



En términos de programación, un algoritmo es una secuencia de pasos lógicos que permiten solucionar un problema. 

Es un conjunto de instrucciones o reglas definidas y no-ambiguas, ordenadas y finitas que permite, típicamente, solucionar un problema, realizar un cómputo, procesar datos y llevar a cabo otras tareas o actividades.​ Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. 

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 de su patrón. Algunos ejemplos en matemática son el algoritmo de la multiplicación, para calcular el producto, el algoritmo de la división para calcular el cociente de dos números.




Partes de un algoritmo


Todo algoritmo debe constar de las siguientes partes:

Input o entrada. El ingreso de los datos que el algoritmo necesita para operar.

Proceso. Se trata de la operación lógica formal que el algoritmo emprenderá con lo recibido del input.

Output o salida. Los resultados obtenidos del proceso sobre el input, una vez terminada la ejecución del algoritmo.

Tipos de algoritmos


Existen cuatro tipos de algoritmos en informática:

Algoritmos computacionales. Un algoritmo cuya resolución depende del cálculo, y que puede ser desarrollado por una calculadora o computadora sin dificultades.

Algoritmos no computacionales. Aquellos que no requieren de los procesos de un computador para resolverse, o cuyos pasos son exclusivos para la resolución por parte de un ser humano.

Algoritmos cualitativos. Se trata de un algoritmo en cuya resolución no intervienen cálculos numéricos, sino secuencias lógicas y/o formales.

Algoritmos cuantitativos. Todo lo contrario, es un algoritmo que depende de cálculos matemáticos para dar con su resolución.

Medios de expresión de un Algoritmo

Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural,pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.

Diagrama de flujo


Un diagrama de flujo es un diagrama que describe un proceso, sistema o algoritmo informático. Se usan ampliamente en numerosos campos para documentar, estudiar, planificar, mejorar y comunicar procesos que suelen ser complejos en diagramas claros y fáciles de comprender. Los diagramas de flujo emplean rectángulos, óvalos, diamantes y otras numerosas figuras para definir el tipo de paso, junto con flechas conectoras que establecen el flujo y la secuencia.

Ejemplo: 



Este es un diagrama de flujo con un algoritmo diseñado para encender una lampara.

Pseudocódigo

Cuando se trabaja e programación, antes de escribir nuestro programa, primero escribimos el pseudocódigo.



 El pseudocódigo es una forma de escribir los pasos que va a realizar un programa de la forma más cercana al lenguaje de programación que vamos a utilizar posteriormente. Es como un falso lenguaje, pero en nuestro idioma, en el lenguaje humano y en español.



Una de las mayores dificultades con las que se encuentran los hispanoparlantes que empiezan a programar es el idioma. Por eso es bueno utilizar el pseudocódigo, que ayuda a asimilar con más facilidad las ideas básicas. Este pseudocódigo vale para pasarlo posteriormente a cualquier lenguaje de programación, no importa el que quieras usar.



Ejemplo:


Pseudocodigo para detectar el numero mayor entre dos números.


Encuentra mas información aquí: https://docs.google.com/viewer?a=v&pid=sites&srcid=dW5pY2VzYXIuZWR1LmNvfHZhbmVzc2FibGFuY292fGd4OjE1NDFlYWI0OTJiNzFkMGQ