¿Qué es un algoritmo?
Receta paso a paso para resolver un problema. Mira cómo se ejecuta:
Maestro: Victorino Ramirez Reyes
Escribir instrucciones claras para que una computadora haga una tarea, paso a paso, sin ambigüedad.
Receta paso a paso para resolver un problema. Mira cómo se ejecuta:
Reduce tareas repetitivas y libera tiempo.
Mejora procesos en empresas y organizaciones.
Base de software, apps, web e IA.
Convierte problemas en sistemas que funcionan.
// La máquina ejecuta esto literalmente
const nombre = "Estudiante";
function saludar(persona) {
return `Hola, ${persona}!`;
}
console.log(saludar(nombre));
// → "Hola, Estudiante!"
La diferencia clave es la precisión: la computadora no interpreta intenciones, ejecuta instrucciones exactas.
"Pásame la sal" — si no la ves, pides más contexto, asumes, infieres.
Ambiguo · Flexible · Contextual
"sal = mesa.objetos.buscar('sal'); usuario.recibir(sal);" — un paso fuera y falla.
Exacto · Estructurado · Estricto
Sumar dos números — cada lenguaje tiene su estilo. Haz click en las pestañas y mira cómo cambia el código.
; Sumar 5 + 3 en ensamblador
section .text
global _start
_start:
mov eax, 5 ; cargar 5
add eax, 3 ; sumar 3
mov ebx, eax ; guardar resultado
int 0x80 ; llamar al SO
# La misma suma — pero legible
def sumar(a, b):
return a + b
resultado = sumar(5, 3)
print(f"5 + 3 = {resultado}")
# → 5 + 3 = 8
Se parecen a cómo pensamos.
Menos código, más resultado.
Python, Java, JavaScript.
Corren en cualquier máquina.
Ambos ejecutan programas — pero traducen el código de forma distinta.
Traduce TODO antes de ejecutar. Rápido, pero hay que recompilar tras cada cambio.
Lee y ejecuta línea por línea. Más flexible, levemente más lento.
"5" + "3" da "53" (texto pegado). 5 + 3 da 8. Mismo símbolo, distinto tipo → distinto resultado.
Pasa el mouse por cada tarjeta — son los bloques con los que armas cualquier programa.
Números sin decimales.
edad = 21Números con punto.
precio = 3.14Cadena de caracteres.
nombre = "Ana"Verdadero o falso.
activo = trueColección ordenada.
[1, 2, 3]Ausencia de valor.
resultado = nullUna variable es un espacio en memoria que guarda un dato — y su valor PUEDE cambiar.
// Variable: el valor PUEDE cambiar
let puntos = 0;
puntos = puntos + 10; // OK
puntos = puntos - 5; // OK
console.log("Puntos:", puntos);
// → Puntos: 5
// Constante: el valor NO debe cambiar
const PRECIO_ENTRADA = 150;
let cantidad = 3;
let total = PRECIO_ENTRADA * cantidad;
console.log("Total:", total);
// → Total: 450
// Intentar reasignar dispara error
// PRECIO_ENTRADA = 200; ❌
Una constante guarda un valor fijo. Si intentas cambiarla, el programa te detiene.