Calculadora de Aligação — Razão de Mistura e Quantidades
Encontre a razão para misturar um ingrediente mais barato e outro mais caro (ou uma concentração baixa e alta) para atingir um valor alvo, além da quantidade exata de cada um. Calculadora de aligação-alternada gratuita com um diagrama cruzado trabalhado.
Calculadora de Aligação
Digite o valor do ingrediente mais barato, do ingrediente mais caro e do valor da mistura alvo. A ferramenta retorna a razão em que misturá-los — e as quantidades exatas se você fornecer uma quantidade total.
Valores de entrada
Resultados
Razão de mistura
Quantidades
Cruz de aligação
Fórmula de aligação
10.00 : 10.00 = (30.00 − 20.00) : (20.00 − 10.00)
Composição da mistura
Documentação
O que esta calculadora faz (ELI5)
Você tem duas coisas de valores diferentes — uma barata e uma cara — e quer misturá-las em uma mistura com algum valor alvo entre elas. Aligação indica quanto de cada usar.
Pense em um balanço. O valor alvo é o pivô. O ingrediente cujo valor está longe do alvo deve estar em pequena quantidade, e aquele próximo do alvo deve estar em grande quantidade, para que os dois lados se equilibrem. Aligação é apenas a aritmética desse equilíbrio.
Digite três números — o valor mais barato, o valor mais caro e o alvo — e a ferramenta fornece:
- a razão de mistura (por exemplo, 1 : 2, significando 1 parte barata para 2 partes cara),
- as quantidades exatas de cada ingrediente quando você insere uma quantidade total,
- um diagrama cruzado e um gráfico de composição para você ver a mistura.
"Valor" pode ser um preço, uma percentagem de força ou uma concentração (%, mg/mL, m/v) — qualquer coisa medida em uma escala consistente.
A fórmula
Com um valor mais barato C, um valor mais caro D, e um valor de mistura alvo M onde C < M < D:
As partes de cada ingrediente vêm da diferença oposta — quanto mais longe o alvo fica de um ingrediente, mais do outro ingrediente você precisa. Se você também conhece a quantidade total Q:
A cruz de aligação
A maneira clássica de organizar isto é a "cruz": coloque os dois valores de ingrediente à esquerda, o alvo no meio e subtraia ao longo de cada diagonal. Cada diferença cai no canto oposto e se torna as partes daquele ingrediente.
1 Cara (D) ───────┐ ┌─────── (M − C) = partes caras
2 ╲ ╱
3 Alvo (M)
4 ╱ ╲
5 Barata (C) ───────┘ └─────── (D − M) = partes baratas
6Exemplo trabalhado
Misture um ingrediente de 30 para vender por $20:
Partes iguais. Para 100 unidades no total, isto é 50 da mais barata e 50 da mais cara — e o valor da mistura é exatamente 25 e a razão fica 5 : 15 = 1 : 3: quanto mais próximo o alvo fica do valor mais caro, mais ingrediente caro você precisa.
Aligação alternada vs. aligação medial
- Aligação alternada (o que esta ferramenta faz) — você conhece os valores dos dois ingredientes e o alvo, e resolve a razão.
- Aligação medial — você conhece as quantidades e valores dos ingredientes, e resolve o valor da mistura resultante. Isto é apenas a média ponderada: .
Os dois são inversos um do outro, o que é uma maneira prática de verificar seu trabalho: insira as quantidades que esta ferramenta fornece em uma média ponderada e você deve chegar ao seu alvo.
Onde é usado
- Preparação farmacêutica — misture uma preparação de alta e baixa força (por exemplo, uma solução de 70% e 20%) para uma concentração prescrita. Os valores são percentagens ou mg/mL em vez de dólares; a aritmética é idêntica.
- Negócios e preços — misture estoque barato e premium para atingir um custo unitário alvo ou preço de venda.
- Química e alimentos/bebidas — dilua ou fortifique para uma concentração, teor alcoólico ou Brix alvo.
Como a regra só precisa de um único valor em uma escala consistente, as mesmas três entradas cobrem todas estas.
Como usar
- Digite o valor mais barato, o valor mais caro e o valor da mistura alvo (qualquer unidade consistente).
- Opcionalmente, digite a quantidade total para obter a quantidade exata de cada ingrediente.
- Leia a razão, a razão simplificada e as quantidades; o diagrama cruzado e a rosca mostram a divisão.
As entradas sincronizam com a URL da página, portanto você pode marcar ou compartilhar uma configuração exata. O alvo deve estar estritamente entre os dois valores de ingrediente — caso contrário, nenhuma mistura deles pode atingi-lo, e a ferramenta indica isto.
Calcule em código
Cada trecho leva o valor mais barato c, valor mais caro d, alvo m e quantidade total q, e retorna as duas partes e as duas quantidades.
Excel
Assumindo C2 = mais barato, D2 = mais caro, M2 = alvo, Q2 = quantidade total:
1=D2-M2 ' partes baratas (D − M)
2=M2-C2 ' partes caras (M − C)
3=(D2-M2)/((D2-M2)+(M2-C2))*Q2 ' quantidade barata
4=(M2-C2)/((D2-M2)+(M2-C2))*Q2 ' quantidade cara
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}
6Perguntas frequentes
E se o alvo não estiver entre os dois valores? Então nenhuma mistura dos dois pode atingi-lo — uma mistura de um item de 30 sempre cai entre 30. A ferramenta sinaliza isto em vez de retornar uma razão falsa.
A unidade importa? Não. A razão depende apenas de diferenças em uma escala consistente, portanto preços, percentagens e mg/mL funcionam todos — apenas mantenha todas as três entradas na mesma unidade.
Posso usá-lo para três ou mais ingredientes? Esta ferramenta trata o caso de dois ingredientes. Problemas com três ou mais componentes têm muitas respostas válidas e geralmente são resolvidos emparelhando ingredientes ou com equações lineares.
Aligação é o mesmo que uma média ponderada? São inversos. Uma média ponderada (aligação medial) transforma quantidades em um valor de mistura; aligação alternada transforma um valor alvo em quantidades.
Fontes
- Alligation — Wikipedia — definições de aligação alternada e medial e a regra subjacente.
- Alligation Calculator — Omni Calculator — a forma baseada em concentração usada em farmácia, com exemplos trabalhados.
- Pharmaceutical calculations by alligation method — EGPAT — explicação dos primeiros princípios da cruz de aligação para preparação.