A equação do segundo grau é uma daquelas coisas que quase todo mundo viu na escola, decorou a fórmula de Bhaskara, mas… nunca soube onde usar de verdade. Aqui você vai entender de forma clara o que é, para que serve, por que ela existe e como aplicar isso com um exemplo prático e funcional em programação.
Definição
Uma equação do segundo grau tem a forma:
ax² + bx + c = 0
Onde:
a
,b
ec
são coeficientes reais (coma ≠ 0
)x
é a variável desconhecida- A solução da equação é o(s) valor(es) de
x
que tornam a equação verdadeira
Fórmula de Bhaskara
Para resolver essa equação, usamos a fórmula de Bhaskara, que depende do cálculo do delta (Δ):
Δ = b² - 4ac
Depois:
x₁ = (-b + √Δ) / (2a)
x₂ = (-b - √Δ) / (2a)
Interpretação do Delta
O valor de Δ determina a quantidade e o tipo de soluções:
- Se
Δ > 0
: duas raízes reais diferentes - Se
Δ = 0
: uma raiz real (raiz dupla) - Se
Δ < 0
: não existem raízes reais (as soluções são complexas)
Onde isso é usado de verdade?
Essa equação não é só uma curiosidade matemática. Ela é ferramental em vários contextos de engenharia, física e programação. Alguns exemplos reais:
- Física: trajetória de projéteis (movimento parabólico)
- Computação gráfica: colisão de objetos com superfícies curvas
- Games: cálculo de tempo para atingir um ponto com aceleração constante
- Análise de dados: encontrar máximos/mínimos em curvas de tendência
- Finanças: curvas de juros ou simulações com taxa composta
- Geometria computacional: interseção de raios com círculos ou esferas
Exemplo prático: colisão com uma parábola em um jogo
Imagine que, num jogo, o personagem lança um projétil, e você quer saber quando ele vai atingir o solo. A altura do projétil pode ser modelada com uma equação do segundo grau: h(t)=−5t2+20t+1h(t) = -5t² + 20t + 1
Onde:
t
é o tempo em segundosh(t)
é a altura em metros-5
é a aceleração da gravidade simulada20
é a velocidade inicial para cima1
é a altura inicial do lançamento
Queremos saber quando o projétil atinge o solo, ou seja: quando h(t) = 0
.
Resolvendo em PHP
function bhaskara($a, $b, $c) {
$delta = $b**2 - 4 * $a * $c;
if ($delta < 0) {
return "Não existem raízes reais.";
}
$x1 = (-$b + sqrt($delta)) / (2 * $a);
$x2 = (-$b - sqrt($delta)) / (2 * $a);
return [$x1, $x2];
}
// Exemplo: -5t² + 20t + 1 = 0
$resultado = bhaskara(-5, 20, 1);
if (is_array($resultado)) {
echo "O projétil atinge o solo em:\n";
echo "t₁ = " . round($resultado[0], 2) . " segundos\n";
echo "t₂ = " . round($resultado[1], 2) . " segundos\n";
} else {
echo $resultado;
}
Saída esperada:
O projétil atinge o solo em:
t₁ = 0.05 segundos
t₂ = 4.0 segundos
O tempo positivo é o que interessa no mundo real: ou seja, o projétil leva aproximadamente 4 segundos para atingir o solo. O outro valor representa o instante “antes do lançamento” na parábola simétrica — é matematicamente válido, mas fora do tempo útil no jogo.
Considerações Finais
- A equação do segundo grau serve como ferramenta de modelagem. Onde há uma curva em forma de parábola, ela aparece.
- Usar Bhaskara é só a última etapa. O mais importante é modelar corretamente o problema em
ax² + bx + c
. - Saber interpretar o delta e os sinais dos coeficientes ajuda a prever o comportamento da curva sem precisar desenhá-la.