- 1

¿Qué es un byte? ¿Qué es un bit?
19:13 - 2

Cómo funcionan los correos electrónicos
23:02 - 3

Cómo funcionan los circuitos electrónicos
02:30 - 4

Procesadores y arquitecturas de CPU
17:57 - 5

¿Qué es un system on a chip?
08:31 - 6

Diferencia entre memoria RAM y disco duro
17:30 - 7

GPUs, tarjetas de video y sonido
06:00 - 8

Periféricos y sistemas de entrada de información
08:28 - 9

La evolución de la arquitectura de la computación
03:43
Qué es un algoritmo
Clase 30 de 32 • Fundamentos de Ingeniería de Software
Contenido del curso
- 10

Introducción a las redes y protocolos de Internet
12:43 - 11

Puertos y protocolos de red
10:56 - 12

Qué es una dirección IP y el protocolo de Internet
10:37 - 13

Cables submarinos, antenas y satélites en Internet
10:09 - 14

Qué es un dominio, DNS o Domain Name System
05:20 - 15

Cómo los ISP hacen Quality of Service o QoS
08:17 - 16

Cómo funciona la velocidad en internet
09:38 - 17

Qué es el Modelo Cliente/Servidor
16:00 - 18

Cómo funciona un sitio web
10:59 - 19

Internet es más grande de lo que crees
03:20
¿Cómo crear un algoritmo de combate Pokémon?
Imagina un universo donde criaturas legendarias luchan por sus vidas. Estamos hablando de Pokémon, una fusión perfecta entre estrategia y programación que ejemplifica cómo funcionan los algoritmos. Aquí, desglosaremos el proceso para entender cómo puedes programar una batalla Pokémon siguiendo estas dinámicas.
¿Qué es un Pokémon en términos de programación?
Cuando piensas en Pokémon, piénsalo como un objeto en el mundo de la programación. Un objeto es una estructura que tiene variables (atributos) y funciones. En nuestro caso, un Pokémon tiene:
- Nombre: Pikachu, Jigglypuff, etc.
- Vida: Inicialmente establecemos 100 puntos de vida para cada Pokémon.
- Poder de ataque: Pikachu tiene 55 puntos de ataque y Jigglypuff 45.
Con estos atributos, estamos listos para definir las batallas Pokémon.
¿Cómo funciona una batalla Pokémon?
Las batallas Pokémon son por turnos. Aquí el algoritmo de combate se describe paso por paso:
- Declaración de Pokémon: Inicializamos las variables de vida y ataque para cada Pokémon.
let pikachu = { vida: 100, ataque: 55 };
let jigglypuff = { vida: 100, ataque: 45 };
- Determinación de turnos: Usamos una variable llamada
turnopara saber a quién le toca.
let turno = 1; // 1 es Pikachu, 0 es Jigglypuff
-
Ciclo de combate: Mientras ambos Pokémon tengan más de 0 de vida, siguen peleando:
- Si es turno de Pikachu, Jigglypuff pierde vida igual al ataque de Pikachu.
- Si es turno de Jigglypuff, Pikachu pierde vida igual al ataque de Jigglypuff.
while (pikachu.vida > 0 && jigglypuff.vida > 0) {
if (turno === 1) {
jigglypuff.vida -= pikachu.ataque;
turno = 0;
} else {
pikachu.vida -= jigglypuff.ataque;
turno = 1;
}
}
¿Cómo saber quién gana la batalla?
Al terminar el ciclo, verificamos quién queda con vida mayor a cero. Si Pikachu tiene vida mayor a cero, gana.
if (pikachu.vida > 0) {
console.log("Pikachu gana.");
} else {
console.log("Jigglypuff gana.");
}
¿Qué conceptos de programación hemos aprendido?
Este ejercicio sencillo de una batalla Pokémon abarca conceptos fundamentales como:
- Variables: Almacenan datos como nombres, vida y ataque.
- Condicionales: Se usan para tomar decisiones, como quién ataca o quién ganó.
- Ciclos: Permiten repetir acciones mientras una condición sea verdadera.
Este ejemplo es solo la puerta de entrada al mundo de la programación. Si deseas profundizar más, puedes explorar plataformas como Mejorándola en Platzi, que ofrece cursos completos de programación. ¡Sigue adelante y continúa descubriendo cómo programar!