Internet

¿Qué es un algoritmo? ¿Una tecnología extraterrestre?

algoritmo

Cuando buscamos en Google el término algoritmo aparecen más de 4 millones de resultados Muchos, ¿verdad? Pero ¿sabes lo que son y cómo usarlos? Cada día miles de desarrolladores logran resolver problemas de niveles variados, utilizando algoritmos y la lógica de programación.

En el artículo de hoy, vamos a explicar que son los algoritmos, cómo funcionan y algunos ejemplos prácticos de su utilización. Además, comprobarás cómo se puede aprender más acerca de los algoritmos sin salir de casa, sólo por tu ordenador y el teléfono móvil. ¿Preparado para tener una clase básica de algoritmos y lógica de programación? ¡Vamos allá!

¿Qué es un algoritmo?

Una de las ventajas de los algoritmos es que tienen una lógica común. Es decir, si aprendes la lógica detrás de los algoritmos computacionales, podrás programar en prácticamente cualquier lenguaje de programación. Lo que va a cambiar de un lenguaje a otro, generalmente, son las palabras reservadas, sintaxis y la forma en que cada una se estructurará.

En el diccionario, el término que encontramos para el algoritmo es el de: “Una secuencia de razonamientos u operaciones que ofrece la solución de ciertos problemas.” Esto significa que los algoritmos son una serie de pasos necesarios para resolver un determinado problema.

Un algoritmo es una lista finita de instrucciones, que se utiliza con mayor frecuencia para resolver problemas o realizar tareas. Es posible que hayas escuchado el término usado en algún contexto sofisticado sobre un técnico que usa un algoritmo para hacer algo muy complejo, generalmente en programación. De hecho, lo más probable es que hayas oído hablar sobre el término para explicar la mayoría de las cosas relacionadas con los procesos informáticos.

Para hacer que un ordenador haga algo, hay que escribir un programa con un lenguaje de programación. Para lograr que este programa funcione, hay que indicarle al ordenador, paso a paso, exactamente lo que debe hacer. Luego, el ordenador ejecuta el programa, siguiendo cada paso mecánicamente, para lograr el objetivo final. Cuando se indica al ordenador qué hacer, también se puede elegir cómo lo hará. Ahí es donde entran los algoritmos informáticos. El algoritmo es la técnica básica utilizada para realizar este trabajo.

Vale, pero ¿cómo aplicamos esto a la hora de programar y desarrollar sitios y software?

algoritmo

Algoritmos y Softwares

Cuando te sumerges en el área de desarrollo de software, las cosas pueden parecer muy difíciles. Sin embargo, es necesario comprender que un programa aplica la lógica y algoritmos para resolver problemas reales de nuestro día a día.

En otras palabras, cualquier solución de problema requiere un poco de la lógica humana, ¿verdad? Pues, en el área de programación eso no es diferente. Sin embargo, para superar el obstáculo inicial, hay que crear los primeros algoritmos.

Bueno, vamos a aclarar las cosas con un ejemplo práctico, ¡vamos allá!

Creación de un contador de palabras

Imagina que deseas crear una aplicación que reciba una frase del usuario y cuente cuántas letras y palabras tiene (esta funcionalidad está presente en Microsoft Word). Por lo tanto, ¿cómo debería funcionar tu algoritmo? Vamos a pensar primero en el paso a paso de esta aplicación:

Quizá te interese leer:  Archivo Robots.txt ¿Qué es y cómo usarlo y configurarlo correctamente?

1. Tratar las entradas

La primera parte de un algoritmo es saber con qué tipo de datos el algoritmo estás tratando. De esta manera, sabrás que debes tener en cuenta al pasar al segundo paso. En este ejemplo, te basarás en el texto y sus palabras. Siendo así, las entradas serán especificadas como texto.

2. Pensando en el procesamiento

Al haber recibido las letras y las palabras del usuario, ¿cómo se pueden contar? Una forma de construir este algoritmo sería tener un contador que empiece desde cero y vaya creciendo con cada letra que se añade. Además, cuando el usuario inserta un espacio, podría haber otro contador, con el objetivo de contar las palabras y no las letras. En total, serían dos contadores.

Otra idea que se puede aplicar en el procesamiento de este ejemplo sería contar todas las letras y palabras sólo después de que se hayan insertado.

¡En resumen, hay dos formas diferentes de resolver el mismo problema, y ​​ ¡ambas funcionan!

3. Tratando la salida

Al final, tendrás como resultado un número que contó las letras y otro que contó las palabras. Independientemente de la forma en que se efectúen los cálculos, podrás tener estas dos salidas en cualquiera de los casos anteriores. Esto muestra que los algoritmos pueden funcionar de diferentes formas, dependiendo de quién está desarrollando la solución.

No soy bueno en matemáticas, ¿cómo puedo crear un algoritmo?

Mucha gente cree que no puede ser programador porque no son buenos en matemáticas, aunque, realmente, esto no es así. Sí, es posible aprender algoritmos y lógica de programación incluso sin ser un veterano en las exactas.

Aunque si tienes dificultades con estas áreas del conocimiento, tal vez tu curva de aprendizaje sea un poco mayor que otras personas. En otras palabras, tendrás más dificultades para aprender. Sin embargo, eso no quiere decir que no puedes ser un gran desarrollador en el futuro. Por eso, procura aprender y creer en ti mismo. También tendrás que estudiar mucho.

Una buena manera de entender mejor lo que es la lógica de programación y conocer ejemplos de cómo se aplica en nuestro día a día, es a través de este ejemplo. En él se muestra un ejemplo claro y simple de cómo es la lógica de programación y los algoritmos para los principiantes.

Vamos a explicar este ejemplo de ir al baño para ducharse, escrito en formato de lista para organizar el pensamiento:

  • Coger la toalla y la ropa.
  • Entrar en el baño y cerrar la puerta.
  • Quitarse la ropa.
  • Abrir la ducha y esperar que salga el agua a la temperatura correcta.
  • Entrar en la ducha.
  • Mojarse, enjuagarse, duchado: fin de la ducha.
  • Cerrar la ducha.
  • Tomar la toalla y secarse.
  • Salir de la ducha.
  • Vestirse con la ropa limpia.
  • Salir del baño.
  • Final

Digamos que este es el baño estándar, pero se puede variar de acuerdo a sus preferencias.

Quizá te interese leer:  ¿Qué es el SEO y por que es tan importante para tu web?

Lo mismo ocurre con el software y las funcionalidades dentro de un sistema. Escribes los algoritmos, como la lista anterior, para llegar a un resultado esperado con las instrucciones definidas.

La diferencia entre el algoritmo anterior y los algoritmos de sistemas es el lenguaje utilizado. El algoritmo anterior se ha escrito de forma para que puedas comprenderlo. Ahora, ¿qué necesitas hacer para que un ordenador entienda?

Para que un ordenador entienda tu algoritmo, básicamente, necesitarás usar un lenguaje de programación, es decir, escribir una secuencia de pasos que un ordenador (que no tiene habilidades de interpretación subjetiva) deberá ejecutar utilizando un lenguaje que es conocido y fácilmente interpretado por el ordenador.

Estructuras de un algoritmo

Cuando hablamos de lógica de programación y algoritmos, hay algunos patrones que son necesarios para tener una mejor comprensión sobre el tema. Vamos a citar algunos de ellos a continuación.

Tipos de variables

Las entradas de un algoritmo son muy importantes porque actúan de diferentes formas. Trabajar con números es una cosa, con letras es otra y, con palabras, algo completamente diferente. Por eso, es interesante saber qué tipo de entradas existen. Actualmente las más comunes son:

  • Texto
  • Todos
  • Lógico
  • Real

Para que quede más claro, vamos a dar una aplicación para cada uno de ellos. Imagínate que quieres desarrollar un formulario donde las personas coloquen su nombre, edad, sexo, si está trabajando en el momento y qué salario recibe. Para que tu aplicación funcione, a la hora de procesar los datos, tendrá que hacer la siguiente relación:

  • Nombre: Texto
  • Edad: completo
  • Trabaja: Lógico
  • Salario: Real

Sólo texto se puede aceptar en el campo de nombre, como letras y palabras; Los enteros son aquellos números sin coma, la edad del sujeto es un ejemplo perfecto; Sobre el trabajo de la persona, puede responder sólo sí o no, siendo así, se trata de una variable que almacena “verdadero” o “falso” (también conocida como booleana); Y en el caso del salario, el valor real es aquel que permite números con coma.

Estructuras de repetición

¿Recuerdas que en nuestro ejemplo del recuento de palabras comentamos que sería posible contar cada letra en el momento en el que se escribiese? Para hacer esto usamos un recurso llamado estructuras de repetición. Estas funcionan en dependiendo de la entrada.

Las estructuras básicas de las entradas son:

  • Mientras una condición está sucediendo, hacer una cosa determinada.
  • Si la condición deja de ocurrir, hacer otra cosa.

Cuando se ejecuta el código, se leerá línea por línea. En nuestro ejemplo de contar las palabras, ese algoritmo funcionaría así:

  • Mientras el usuario está escribiendo nuevas letras, se cuentan las letras que entras y se suma al número de letras ya contadas.
  • Si el usuario deja de insertar letras, se deja de contar y se muestra el número de letras recibidas.

De esta forma, el programa contabilizará cada una de las letras que se introdujeron, mostrando un valor final sólo cuando no haya más letras. La función se detendrá cuando entre la última letra, porque indicamos que sólo se ejecuta mientras hubiera letras.

Por supuesto, este algoritmo es muy simple y no tiene en cuenta diferentes situaciones que pueden suceder. Sin embargo, es bueno para ilustrar la lógica de las estructuras de repetición que existen detrás de, prácticamente, todos los algoritmos. En otras palabras, este ejemplo también muestra cómo la lógica y algoritmos de programación es más sencillo de lo que parece.

En pocas palabras, el algoritmo no es más que una receta, una secuencia de pasos e instrucciones para realizar acciones, con el objetivo de solucionar un problema.

¿Qué es un algoritmo? ¿Una tecnología extraterrestre?
4.8 (95%) 4 votos

Ver comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Populares

Ir arriba