23. Despeje de variables en fórmulas

Despejar una variable significa reorganizar una fórmula para calcular una variable distinta. Es una habilidad clave para reutilizar fórmulas y resolver problemas desde diferentes datos de entrada.

23.1 Introducción

Muchas fórmulas se presentan despejadas para una variable específica. Por ejemplo, velocidad = distancia / tiempo calcula velocidad si conocemos distancia y tiempo.

Pero a veces necesitamos calcular otra variable. Si conocemos velocidad y tiempo, queremos distancia. Si conocemos distancia y velocidad, queremos tiempo. Para eso despejamos.

En programación, despejar fórmulas permite crear funciones más flexibles y resolver problemas con los datos disponibles.

23.2 Qué significa despejar

Despejar una variable significa dejarla sola a un lado del signo igual, aplicando operaciones equivalentes en ambos lados de la fórmula.

y = 2x + 3
Queremos despejar x:
y - 3 = 2x
x = (y - 3) / 2
const y = 11;
const x = (y - 3) / 2;

console.log(x);

23.3 Operaciones inversas

Para despejar usamos operaciones inversas. Cada operación se deshace con otra operación.

Operación Operación inversa Ejemplo
Sumar Restar x + 5 = 12 → x = 12 - 5
Restar Sumar x - 3 = 10 → x = 10 + 3
Multiplicar Dividir 4x = 20 → x = 20 / 4
Dividir Multiplicar x / 5 = 6 → x = 6 × 5
Elevar al cuadrado Raíz cuadrada x² = 25 → x = √25

23.4 Despejar en una fórmula de velocidad

La fórmula de velocidad relaciona distancia y tiempo.

velocidad = distancia / tiempo

Si queremos despejar distancia, multiplicamos ambos lados por tiempo:

distancia = velocidad × tiempo
const velocidad = 80;
const tiempo = 2.5;
const distancia = velocidad * tiempo;

console.log(distancia);

23.5 Despejar tiempo

Desde la misma fórmula, si queremos calcular tiempo, dividimos distancia por velocidad.

tiempo = distancia / velocidad
const distancia = 200;
const velocidad = 80;
const tiempo = distancia / velocidad;

console.log(tiempo);

Si velocidad es cero, la división no tiene sentido en este contexto.

23.6 Despejar en fórmulas con suma

En una fórmula con suma, restamos para aislar la variable.

total = subtotal + impuesto
subtotal = total - impuesto
const total = 1210;
const impuesto = 210;
const subtotal = total - impuesto;

console.log(subtotal);

23.7 Despejar en fórmulas con multiplicación

Si una variable está multiplicada por otra, despejamos dividiendo.

total = precio × cantidad
precio = total / cantidad
const total = 4500;
const cantidad = 6;
const precio = total / cantidad;

console.log(precio);

23.8 Despejar en fórmulas con porcentajes

Si conocemos un precio final después de aplicar un descuento, podemos despejar el precio original.

precioFinal = precioOriginal × (1 - descuento / 100)
precioOriginal = precioFinal / (1 - descuento / 100)
const precioFinal = 800;
const descuento = 20;
const precioOriginal = precioFinal / (1 - descuento / 100);

console.log(precioOriginal);

Los paréntesis son fundamentales para que el factor de descuento se calcule correctamente.

23.9 Despejar en fórmulas con potencias

Si una variable está elevada al cuadrado, usamos raíz cuadrada para despejarla.

área = lado²
lado = Çrea
const area = 64;
const lado = Math.sqrt(area);

console.log(lado);

En contextos geométricos, normalmente tomamos la raíz positiva porque una longitud no puede ser negativa.

23.10 Despejar en el área de un círculo

La fórmula del área de un círculo es:

área = π × radio²

Para despejar el radio, primero dividimos por pi y luego aplicamos raíz cuadrada.

radio = √(área / π)
const area = 78.53981633974483;
const radio = Math.sqrt(area / Math.PI);

console.log(radio);

23.11 Despejar en crecimiento lineal

Una fórmula lineal típica es:

y = m × x + b

Si queremos despejar x, restamos b y dividimos por m.

x = (y - b) / m
const y = 23;
const m = 4;
const b = 3;

const x = (y - b) / m;

console.log(x);

23.12 Crear funciones para cada despeje

Una misma relación puede generar varias funciones, según qué variable queramos calcular.

function calcularVelocidad(distancia, tiempo) {
  return distancia / tiempo;
}

function calcularDistancia(velocidad, tiempo) {
  return velocidad * tiempo;
}

function calcularTiempo(distancia, velocidad) {
  return distancia / velocidad;
}

console.log(calcularVelocidad(200, 2.5));
console.log(calcularDistancia(80, 2.5));
console.log(calcularTiempo(200, 80));

Nombrar las funciones según la variable calculada hace que el código sea más expresivo.

23.13 Validar restricciones del despeje

Al despejar, pueden aparecer divisiones o raíces que exigen restricciones. Por ejemplo, no podemos dividir por cero y no podemos calcular una raíz cuadrada real de un número negativo.

function calcularTiempo(distancia, velocidad) {
  if (velocidad === 0) {
    return "La velocidad no puede ser cero";
  }

  return distancia / velocidad;
}

function calcularLadoDesdeArea(area) {
  if (area < 0) {
    return "El área no puede ser negativa";
  }

  return Math.sqrt(area);
}

console.log(calcularTiempo(200, 80));
console.log(calcularTiempo(200, 0));
console.log(calcularLadoDesdeArea(64));
console.log(calcularLadoDesdeArea(-64));

23.14 Errores comunes

  • Aplicar una operación inversa solo de un lado de la igualdad.
  • Olvidar paréntesis al traducir un despeje a JavaScript.
  • Dividir por una variable que puede valer cero.
  • No considerar restricciones como áreas negativas o tiempos nulos.
  • Confundir despejar una variable con evaluar la fórmula original.
  • Perder unidades al reorganizar la fórmula.
const y = 23;
const m = 4;
const b = 3;

const correcto = (y - b) / m;
const incorrecto = y - b / m;

console.log(correcto);
console.log(incorrecto);

23.15 Qué debes recordar de este tema

  • Despejar significa dejar una variable sola a un lado de la fórmula.
  • Para despejar se usan operaciones inversas.
  • Sumar se deshace restando, multiplicar se deshace dividiendo y elevar al cuadrado se deshace con raíz cuadrada.
  • Los paréntesis son esenciales al traducir despejes a código.
  • Una misma fórmula puede convertirse en varias funciones según qué variable se calcule.
  • Siempre hay que validar restricciones como divisiones por cero o valores negativos en raíces.
  • El despeje permite reutilizar fórmulas desde distintos datos de entrada.

23.16 Conclusión

Despejar variables permite reorganizar fórmulas para resolver el valor que necesitamos. En programación, esta habilidad evita duplicar lógica y permite crear funciones claras para distintos escenarios.

En el próximo tema estudiaremos coordenadas cartesianas y ubicación de puntos, donde las variables representarán posiciones en un plano.