En este tutorial explicaremos qué son los algoritmos y te enseñaremos en cuestión de 10 minutos de lectura la lógica algorítmica. ¡ENTRA, LO HICIMOS DIVERTIDO!
INICIAMOS:
Bienvenidos a otro nuevo post. Programar es tan fácil como entender el flujo de cualquier proceso. Para explicar la lógica de un algoritmo de programación, ¡citaremos a Pokémon!
Si no sabes qué es este juego, te lo explicamos: es un juego de aventura y acción, en el cual pones a pelear 2 animales, que tienen poderes especiales y diferentes del uno al otro, por así decirlo. Pero antes de diseñar el algoritmo de una batalla Pokémon, te preguntarás …
Índice del artículo
¿Qué son los algoritmos?
Un algoritmo es una secuencia de pasos a seguir; nos explica cómo hacer un proceso paso por paso, de manera precisa y exacta, y siempre tiene un final, nunca es infinito.
¡Ya lo sabes! Ahora sigamos:
Imaginemos que ponemos a pelear a «Pikachu», y a otro que se llama «Jigglypuff».
En la programación, a cada uno de estos se les considera un «Objeto«. Y todos ellos tienen en común varias cosas, como las siguientes:
Nombre | Pikachu | Jigglypuff |
Vida | 100 | 100 |
Ataque | 55 | 45 |
¿Cómo representamos esto en código? Bueno, si viste la difinición de lo que es un objeto, quedaría así:
Pikachu.vida = 100 Pikachu.ataque = 55 Jigglypuff.vida = 100 Jigglypuff.ataque = 45
Para dar rienda a la batalla, se maneja por turnos: uno ataca, luego otro, luego otro, y luego el otro, y así hasta que UNO PIERDE. ¿Cómo sabemos cuál es el turno de cada Pokémon? Veamos:
Nombre | Turno |
Pikachu | 0 (CERO) |
Jigglypuff | 1 |
¿Y esto cómo se representa?:
turno = 0 turno = 1
Cuando sea el turno de Pikachu, la variable turno tendrá el valor de 0, y cuando sea el de Jigglypuff será 1.
Mencionar que en la programación se usa mucho el álgebra. ¡QUE NO CUNDA EL PÁNICO!
Recuerdas que en la escuela te decía:
x = 1 y = 1 z = x + y
¿Cuánto valía z? 3. Usaremos el álgebra tan sencilla como esta para hacer nuestro algoritmo de batalla. ¡Vamos!
¿Listo/a? ¡A pelear!
turno = 0, ¡es el turno de Pikachu, PUUUM!:
Jigglypuff.vida = Jigglypuff.vida - Pikachu.ataque
¿Qué quiere decir esto? La vida de Jigglypuff disminuirá conforme al ataque de Pikachu. Recuerda el álgebra, y que cada objeto tiene valor. El atributo vida = 100, y el ataque para cada Pokémon varía.
¡Pumm! Ahora la vida de Jigglypuff es de 45.
¿Ahora? Evaluamos si es ambos Pokémons tienen vida.
Si Pokachu.vida ES MAYOR QUE 0 (CERO) & Jigglypuff.vida ES MAYOR QUE 0 (CERO) ¡ENTONCES SIGUE!
Ahora el turno = 1, por lo tanto es el turno de Jigglypuff, ¡hace su hazaña!:
Pikachu.vida = Pikachu.vida – Jigglypuff.ataque
¡PUMMM! Ahora Pikachu tiene 65 de vida.
¿Ahora qué sigue? Evaluar si siguen con vida (lo cuál es verdadero porque Pikachu tiene 65 de vida y Jigglypuff tiene 45) y cambiar el turno y volvemos al inicio. ¡Esta vez, a Jigglypuff le queda de vida -10!
¿Qué sigue? Evaluar si alguien sigue vivo:
Si Pikachu.vida ES MAYOR QUE 0 (CERO) & Jigglypuff.vida ES MAYOR QUE 0 (CERO)
¡NO SE CUMPLE! Jigglypuff tiene -10. ¿Qué sigue?:
Si Pikachu.vida ES MENOR O IGUAL A 0 (CERO) ¡ENTONCES JIGGLYPUFF GANA!
Pero Si NO, ¡PIKACHU GANA! ¿Y en cuál entró? ¡EN LA SEGUNDA CONDICIÓN!
Así de sencillo es armar un algoritmo de batalla Pokémon. ¿Quieres verlo gráficamente la explicación de algoritmos con el profesor Freddy Vega? ¡Lo tienes!:
¡Así de sencillo es aprender de algoritmos! Antes de irme, me gustaría que vieras más artículos relacionados a la programación, o si así quieres, ver más tutoriales interesantes. ¡Hasta otro post!