¿Qué son los Algoritmos?

¿Qué es?

Es una secuencia ordenada y cronológica de pasos que llevan a la solución de un problema o a la ejecución de una tarea o actividad.

Los pasos deben tener las siguientes características:

📌 Ser simple, claro, preciso y exacto.

📌 Tener un orden lógico.

📌 Tener un principio y un fin.

Aplicando el concepto de algoritmos a situaciones de nuestra vida cotidiana, tenemos como ejemplo de algoritmos: las instrucciones para armar un mueble o un juguete, los planos de una construcción, las recetas de cocina, etc.

Cuando diseñemos algoritmos, debemos considerar que los pasos cumplan con las caracteristícas antes mencionadas.

A continuación aplicaremos estos conceptos en una situación de nuestra vida cotidiana, a efectos de resaltar las caracteristícas de los pasos de todo algoritmo.

Ejemplo:

Vamos a elaborar un algoritmo para que guíe a una persona normal a cambiar una luz 💡 fundida de la casa.

Piensa en los pasos que debe seguir:

1. Quitar la luz fundida.

2. Colocar el nuevo.

3. Fin.

Si pensaste en otros pasos y no coinciden, pero si conducen de una manera efectiva de ejecutar el cambio de la luz, entonces ya estás desarrollando tu lógica computacional.

Si bien es cierto que son poco pasos, si tu los entiendes y en consecuencia los puede ejecutar para lograr cambiar la luz, entonces hicimos un buen algoritmo.

Ahora supongamos que estamos tratando de entrenar un robot para que haga la tarea.

En ese caso no funcionaría ese algoritmo, tendremos que hacer algo más específico y claro, tomando en cuenta las capacidades elementales del robot.

Así que debemos preguntarnos, qué sabe hacer un robot y con base a ello elaboraremos el algoritmo:

Algoritmo y Capacidades del ROBOT

 🤖 Colocar la escalera.

💿 Suponemos que tiene una escalera especial que la sabe traer y llevar.

🤖 Subir la escalera.

💿 Sabe subir por los peldaños de la escalera hasta llegar a la altura del techo.

🤖 Quitar foco fundido.

💿 Sabe girar el foco a la izquierda hasta que salga.

 🤖 Obtener foco de repuesto.

💿 Suponemos que tiene una caja de herramientas con focos de repuesto de todas las medidas.

 🤖 Colocar el foco de repuesto.

💿 Sabe fijarlo, girando el foco a la derecha.

 🤖 Bajar la escalera.

💿 Sabe bajar los peldaños hasta llegar al piso.

 🤖 Guardar la escalera.

💿 Sabe guardarla en el lugar correspondiente.

 🤖 Fin.

💿 Sabe que ha terminado de ejecutar la tarea.

🤖 Algoritmo.

💿 Capacidades del Software y Hardware.

Durante el desarrollo de algoritmos para computadora es necesario idear los pasos que la máquina deberá seguir para realizar alguna tarea, actividad o para resolver algún problema de nuestra vida cotidiana.

Cuando se presenta el problema de realizar cierta tarea, debemos efectuar diversas actividades subyacentes tales como hacer preguntas, buscar objetos conocidos o dividir el problema en partes.

A menudo hacemos todo eso incoscientemente, pero al elaborar algoritmos para solucionar problemas con la computadora debemos detallar esas actividades de manera explicita.

Preguntas comunes en el contexto de la programación

 💡¿Qué datos tenemos para trabajar y cuál es su apariencia?

💡 ¿Cuántos datos hay?

💡 ¿Cómo sabremos que ya están procesados todos los datos?

💡 ¿Cuál debe ser el dato de salida?

💡 ¿Cuántas veces debe repetirse el proceso?

💡 ¿Qué condiciones especiales de error pueden presentarse?

Cuando se diseña un algoritmo se anotan paso a paso, en secuencia, las acciones que se ejecutaran.

En ocasiones hay que repetir uno o varios pasos cierto número de veces. Se debe controlar todos los pasos para que pueda terminar el proceso. (esto se conoce como: Ciclo Repetitivo)

Otro caso, es que tenemos que llegar a un resultado partiendo de dos o más situaciones. En este caso debemos tomar en cuenta, por un lado, cómo se llega desde una parte y por el otro, cómo se llegaría desde la otra parte. (la alternativa en estas circustancias se utiliza la Selección)

Todas las actividades que llevamos a cabo los seres humanos son algoritmos que hemos apredido a seguir.

Caminar y lavarse los dientes, por ejemplo son secuencias lógicas de pasos.

La civilización está basada en el orden de las cosas y de acciones, esa lógica se llama programación.