Calculadora de Aligación — Proporción de Mezcla y Cantidades
Encuentra la proporción para mezclar un ingrediente más barato y otro más caro (o una concentración baja y una alta) para alcanzar un valor objetivo, más la cantidad exacta de cada uno. Calculadora gratuita de aligación alternativa con un diagrama en cruz resuelto.
Calculadora de Aligación
Ingresa el valor del ingrediente más barato, el ingrediente más caro (más costoso) y el valor de mezcla objetivo. La herramienta devuelve la proporción en la que mezclarlos — y las cantidades exactas si proporcionas una cantidad total.
Valores de entrada
Resultados
Proporción de mezcla
Cantidades
Cruz de aligación
Fórmula de aligación
10.00 : 10.00 = (30.00 − 20.00) : (20.00 − 10.00)
Composición de la mezcla
Documentación
¿Qué hace esta calculadora? (ELI5)
Tienes dos cosas de diferente valor — una barata y una cara — y quieres mezclarlas en una mezcla que tenga algún valor objetivo intermedio. La aligación te dice cuánto de cada una usar.
Piensa en un balancín. El valor objetivo es el pivote. El ingrediente cuyo valor está lejos del objetivo tiene que estar en cantidad pequeña, y el que está cerca del objetivo tiene que estar en cantidad grande, de modo que los dos lados se equilibren. La aligación es solo la aritmética de ese equilibrio.
Escribe tres números — el valor más barato, el valor más caro y el objetivo — y la herramienta te da:
- la proporción de mezcla (p.ej. 1 : 2, lo que significa 1 parte más barata por 2 partes más cara),
- las cantidades exactas de cada ingrediente una vez que ingreses una cantidad total,
- un diagrama en cruz y un gráfico de composición para que puedas ver la mezcla.
"Valor" puede ser un precio, un porcentaje de concentración, o una concentración (%, mg/mL, w/v) — cualquier cosa medida en una escala consistente.
La fórmula
Con un valor más barato C, un valor más caro D, y un valor de mezcla objetivo M donde C < M < D:
Las partes de cada ingrediente provienen de la diferencia opuesta — cuanto más lejos el objetivo se sitúe de un ingrediente, más del ingrediente otro necesitas. Si también conoces la cantidad total Q:
La cruz de aligación
La forma clásica de presentar esto es la "cruz": pon los dos valores de ingredientes en la izquierda, el objetivo en el medio, y resta a lo largo de cada diagonal. Cada diferencia cae en la esquina opuesta y se convierte en las partes de ese ingrediente.
1 Dearer (D) ───────┐ ┌─────── (M − C) = dearer parts
2 ╲ ╱
3 Target (M)
4 ╱ ╲
5 Cheaper (C) ───────┘ └─────── (D − M) = cheaper parts
6Ejemplo resuelto
Mezcla un ingrediente de 30 para vender a $20:
Partes iguales. Para 100 unidades totales, eso es 50 del más barato y 50 del más caro — y el valor de la mezcla es exactamente 25 y la proporción se vuelve 5 : 15 = 1 : 3: cuanto más cerca el objetivo se sitúe del valor más caro, más ingrediente más caro necesitas.
Aligación alternativa vs. aligación medial
- Aligación alternativa (lo que hace esta herramienta) — conoces los dos valores de ingredientes y el objetivo, y resuelves la proporción.
- Aligación medial — conoces las cantidades y valores de los ingredientes, y resuelves el valor de la mezcla resultante. Eso es solo el promedio ponderado: .
Los dos son inversos el uno del otro, lo que es una forma útil de verificar tu trabajo: alimenta las cantidades que esta herramienta te da de nuevo en un promedio ponderado y deberías llegar a tu objetivo.
Dónde se usa
- Compounding farmacéutico — mezclar una preparación de concentración alta y baja (p.ej. una solución del 70% y del 20%) a una concentración prescrita. Los valores son porcentajes o mg/mL en lugar de dólares; la aritmética es idéntica.
- Negocio y fijación de precios — mezclar stock barato y premium para alcanzar un costo unitario o precio de venta objetivo.
- Química y alimentos/bebidas — diluir o fortalecer a una concentración, prueba o Brix objetivo.
Porque la regla solo necesita un solo valor en una escala consistente, las mismas tres entradas cubren todos estos.
Cómo usarlo
- Ingresa el valor más barato, el valor más caro y el valor de mezcla objetivo (cualquier unidad consistente).
- Opcionalmente ingresa la cantidad total para obtener la cantidad exacta de cada ingrediente.
- Lee la proporción, la proporción simplificada y las cantidades; el diagrama en cruz y el gráfico de rosca muestran la división.
Las entradas se sincronizan con la URL de la página, por lo que puedes marcar o compartir una configuración exacta. El objetivo debe estar estrictamente entre los dos valores de ingredientes — de lo contrario, ninguna mezcla de ellos puede alcanzarlo, y la herramienta lo dice.
Calcúlalo en código
Cada fragmento toma el valor más barato c, valor más caro d, objetivo m y cantidad total q, y devuelve las dos partes y las dos cantidades.
Excel
Asumiendo C2 = más barato, D2 = más caro, M2 = objetivo, Q2 = cantidad total:
1=D2-M2 ' cheaper parts (D − M)
2=M2-C2 ' dearer parts (M − C)
3=(D2-M2)/((D2-M2)+(M2-C2))*Q2 ' cheaper amount
4=(M2-C2)/((D2-M2)+(M2-C2))*Q2 ' dearer amount
51def alligation(c, d, m, q=None):
2 if not (c < m < d):
3 raise ValueError("need cheaper < target < dearer")
4 cheaper_parts, dearer_parts = d - m, m - c
5 total = cheaper_parts + dearer_parts
6 if q is None:
7 return cheaper_parts, dearer_parts
8 return cheaper_parts / total * q, dearer_parts / total * q
91function alligation(c, d, m, q) {
2 if (!(c < m && m < d)) throw new Error("need cheaper < target < dearer");
3 const cheaper = d - m, dearer = m - c, total = cheaper + dearer;
4 return q == null
5 ? { cheaper, dearer }
6 : { cheaperAmount: (cheaper / total) * q, dearerAmount: (dearer / total) * q };
7}
81double[] alligation(double c, double d, double m, double q) {
2 if (!(c < m && m < d)) throw new IllegalArgumentException("need c < m < d");
3 double cheaper = d - m, dearer = m - c, total = cheaper + dearer;
4 return new double[] { cheaper / total * q, dearer / total * q };
5}
61(double cheaper, double dearer) Alligation(double c, double d, double m, double q)
2{
3 if (!(c < m && m < d)) throw new ArgumentException("need c < m < d");
4 double cp = d - m, dp = m - c, total = cp + dp;
5 return (cp / total * q, dp / total * q);
6}
71#include <stdexcept>
2#include <utility>
3std::pair<double, double> alligation(double c, double d, double m, double q) {
4 if (!(c < m && m < d)) throw std::invalid_argument("need c < m < d");
5 double cheaper = d - m, dearer = m - c, total = cheaper + dearer;
6 return { cheaper / total * q, dearer / total * q };
7}
81func Alligation(c, d, m, q float64) (float64, float64, error) {
2 if !(c < m && m < d) {
3 return 0, 0, errors.New("need c < m < d")
4 }
5 cheaper, dearer := d-m, m-c
6 total := cheaper + dearer
7 return cheaper / total * q, dearer / total * q, nil
8}
91fn alligation(c: f64, d: f64, m: f64, q: f64) -> Option<(f64, f64)> {
2 if !(c < m && m < d) { return None; }
3 let (cheaper, dearer) = (d - m, m - c);
4 let total = cheaper + dearer;
5 Some((cheaper / total * q, dearer / total * q))
6}
71function alligation($c, $d, $m, $q) {
2 if (!($c < $m && $m < $d)) throw new InvalidArgumentException('need c < m < d');
3 $cheaper = $d - $m; $dearer = $m - $c; $total = $cheaper + $dearer;
4 return [$cheaper / $total * $q, $dearer / $total * $q];
5}
61def alligation(c, d, m, q)
2 raise ArgumentError, "need c < m < d" unless c < m && m < d
3 cheaper, dearer = d - m, m - c
4 total = cheaper + dearer
5 [cheaper / total * q, dearer / total * q]
6end
71alligation <- function(c, d, m, q) {
2 stopifnot(c < m, m < d)
3 cheaper <- d - m; dearer <- m - c; total <- cheaper + dearer
4 c(cheaper = cheaper / total * q, dearer = dearer / total * q)
5}
6Preguntas frecuentes
¿Y si el objetivo no está entre los dos valores? Entonces ninguna mezcla de los dos puede alcanzarlo — una mezcla de un artículo de 30 siempre cae entre 30. La herramienta lo indica en lugar de devolver una proporción falsa.
¿Importa la unidad? No. La proporción depende solo de diferencias en una escala consistente, por lo que precios, porcentajes y mg/mL funcionan — simplemente mantén los tres valores en la misma unidad.
¿Puedo usarlo para tres o más ingredientes? Esta herramienta maneja el caso de dos ingredientes. Los problemas con tres o más componentes tienen muchas respuestas válidas y generalmente se resuelven emparejando ingredientes o con ecuaciones lineales.
¿Es la aligación lo mismo que un promedio ponderado? Son inversos. Un promedio ponderado (aligación medial) convierte cantidades en un valor de mezcla; la aligación alternativa convierte un valor objetivo en cantidades.
Fuentes
- Alligation — Wikipedia — definiciones de aligación alternativa y medial y la regla subyacente.
- Alligation Calculator — Omni Calculator — la forma basada en concentración utilizada en farmacia, con ejemplos resueltos.
- Pharmaceutical calculations by alligation method — EGPAT — explicación desde cero de la cruz de aligación para compounding.