Localizador de raízes de equações quadráticas em Python

Resolva equações quadráticas e identifique raízes reais e complexas usando a fórmula discriminante em Python.

Experimente no Editor

Visão geral

Uma equação quadrática tem a forma ax² + bx + c = 0. Resolvê-la requer a fórmula quadrática: `x = (-b ± sqrt(b² - 4ac)) / 2a`.

O termo `b² - 4ac` é chamado de discriminante. Se positivo, existem duas raízes reais distintas. Se for zero, uma raiz real. Se negativo, duas raízes complexas.

O módulo `cmath` integrado do Python suporta números complexos, permitindo-nos encontrar raízes mesmo quando o discriminante é negativo.

Saída de código e execução

Solucionador robusto capaz de lidar com discriminantes reais, zero e complexos.

import cmath

def find_roots(a, b, c):
    d = (b**2) - (4*a*c) # discriminant
    
    # Calculate both roots
    sol1 = (-b - cmath.sqrt(d)) / (2*a)
    sol2 = (-b + cmath.sqrt(d)) / (2*a)
    
    return sol1, sol2

# Test equation: x^2 - 5x + 6 = 0
r1, r2 = find_roots(1, -5, 6)
print("Roots of x^2 - 5x + 6 = 0:")
print(f"Root 1: {r1.real:.1f}")
print(f"Root 2: {r2.real:.1f}")
Saída terminal
Roots of x^2 - 5x + 6 = 0:
Root 1: 2.0
Root 2: 3.0

Implementação passo a passo

  • Modelos físicos e sistemas de rastreamento de trajetória
  • Vetores geométricos de detecção de colisão
  • Solucionadores matemáticos

Perguntas frequentes

Por que usar `cmath` em vez de `math`?

O módulo `math` padrão gerará um ValueError se você tentar extrair a raiz quadrada de um número negativo. O módulo `cmath` (matemática complexa) lida automaticamente com raízes imaginárias.

Tópicos Relacionados