Elabore algoritmos que resolvam os problemas a seguir, usando variáveis em C++
Determinar as raízes de uma equação do 2^varrho grau, cujas fórmulas são:
l x 1=-b+raizb^2-4 a c2 a x 2=-b-raizb^2-4 a c2 a

Passo 1

Beleza! Vamos resolver um exercício onde precisamos determinar as raízes de uma equação de segundo grau usando C++. A matéria envolvida aqui é Equações do Segundo Grau e Programação em C++. Para resolver isso, vamos precisar entender a fórmula de Bhaskara, que nos ajuda a encontrar as raízes de uma equação quadrática da forma $ ax^2 + bx + c = 0 $.

Passo 2

Primeiro, vamos lembrar qual é a fórmula de Bhaskara. Ela nos dá as soluções (raízes) da equação do segundo grau:
x1 = -b + raizb^2 - 4ac2a
x2 = -b - raizb^2 - 4ac2a
Aqui, $ a $, $ b $ e $ c $ são os coeficientes da equação.

Passo 3

Em C++, vamos precisar declarar variáveis para armazenar os valores de $ a $, $ b $ e $ c $. Além disso, vamos calcular o discriminante $ \Delta = b^2 - 4ac $, que nos indica a natureza das raízes.

Passo 4

Vamos usar a função sqrt da biblioteca <cmath> para calcular a raiz quadrada do discriminante. Se $ \Delta $ for positivo, teremos duas raízes reais e diferentes. Se for zero, teremos duas raízes reais e iguais. Se for negativo, as raízes serão complexas, mas por enquanto vamos focar nas raízes reais.

Passo 5

Agora, vamos implementar isso em um código C++ que solicita ao usuário os valores de $ a $, $ b $ e $ c $, calcula as raízes usando as fórmulas de Bhaskara e exibe os resultados.

Resposta

#include <iostream>
#include <cmath>

int main() {
    double a, b, c;
    double delta, x1, x2;

    // Solicita os coeficientes ao usuário
    std::cout << "Digite o valor de a: ";
    std::cin >> a;
    std::cout << "Digite o valor de b: ";
    std::cin >> b;
    std::cout << "Digite o valor de c: ";
    std::cin >> c;

    // Calcula o discriminante
    delta = pow(b, 2) - 4 * a * c;

    // Verifica o valor de delta para determinar as raízes
    if (delta > 0) {
        x1 = (-b + sqrt(delta)) / (2 * a);
        x2 = (-b - sqrt(delta)) / (2 * a);
        std::cout << "As raízes são reais e diferentes: " << std::endl;
        std::cout << "x1 = " << x1 << std::endl;
        std::cout << "x2 = " << x2 << std::endl;
    }
    else if (delta == 0) {
        x1 = -b / (2 * a);
        std::cout << "As raízes são reais e iguais: " << std::endl;
        std::cout << "x1 = x2 = " << x1 << std::endl;
    }
    else {
        std::cout << "As raízes são complexas e diferentes." << std::endl;
    }

    return 0;
}

Exercícios relacionados