Programação Java: Aplicativo: Determina as raízes de uma equação do segundo grau

Linguagem Java , Programação Java, Java Curso gratis. Crie um programa, em Java, que receba os coeficientes de uma equação do 2o grau e retorne suas raízes.
**
** Um equação do segundo grau é uma equação onde:
ax² + bx + c = 0 , com ‘a’ diferente de 0

Programa em Java que calcula as raízes e resolve uma equação do segundo grau

Passo 1:

A primeira parte do programa recebe os três coeficientes da equação, que são ‘a’, ‘b’ e ‘c’ e serão representados pelo tipo float.

Passo 2:

Uma equação do 2o grau só é válida se ‘a’ for diferente de 0, então, se for igual a 0 o programa deverá terminar.
Ou seja, nosso programa irá acontece dentro do ‘if’ que checa que ‘a’ é diferente de 0.

Passo 3:

Determinando o valor de delta: delta = b² 4ac
Determinando a raiz quadrada de delta: sqrtdelta = (float)Math.sqrt(delta);

Onde sqrt significa ‘square root’, ou raiz quadrada, em inglês.
Em Java, calculamos a raiz quadrada do número x com o método: Math.sqrt(x);
Esse método retorna um tipo ‘double’. Como usamos float em nossos coeficientes, usamos o cast ’(float)’ para transformar o double em float.

Passo 4:

Se delta for maior ou igual a zero, as raízes são dadas por:
raiz1 = (-b + sqrtdelta) / 2a
raiz2 = (-b sqrtdelta) / 2a

Passo 5:

Se delta for menor que zero, suas raízes serão complexas e as raízes serão da forma:
raiz1 = (-b + i.sqrt(-delta) )/2a
raiz2 = (-b i.sqrt(-delta) )/2a

Formatei a saída da seguinte forma, para ficar mais legível, que é a mesma coisa das equações anteriores:
raiz1 = (-b)/2a + i.sqrt(-delta)/2a
raiz2 = (-b)/2a i.sqrt(-delta)/2a

Código Java:

import java.util.Scanner;<br /><br />public class Bhaskara {<br />    public static void main(String[] args) {<br />        float a, b, c,      //coeficientes<br />              delta,        //delta<br />              sqrtdelta,    //raiz quadrada de delta<br />              raiz1,raiz2;  //raízes<br />        Scanner entrada = new Scanner(System.in);<br /><br />        //Passo 1: Recebendo os coeficientes<br />        System.out.println("Equação do 2o grau: ax² + bx + cx = 0");<br />        System.out.print("Entre com o valor de a: ");<br />        a = entrada.nextFloat();<br />        System.out.print("Entre com o valor de b: ");<br />        b = entrada.nextFloat();<br />        System.out.print("Entre com o valor de c: ");<br />        c = entrada.nextFloat();<br /><br />        //Passo 2: Checando se a equação é válida<br />        if(a != 0){<br /><br />        //Passo 3: recebendo o valor de delta e calculando sua raiz quadrada<br />            delta = (b*b) (4*a*c);<br />            sqrtdelta = (float)Math.sqrt(delta);<br /><br />        //Passo 4: se a raiz de delta for maior que 0, as raízes são reais    <br />            if(delta >=0){<br />                raiz1 = ((-1)*b + sqrtdelta)/(2*a);<br />                raiz2 = ((-1)*b sqrtdelta)/(2*a);<br />                System.out.printf("Raízes: %.2f e %.2f", raiz1, raiz2);<br />            }<br />        //Passo 5: se delta for menor que 0, as raízes serão complexas<br />            else{<br />                delta = -delta;<br />                sqrtdelta = (float)Math.sqrt(delta);<br />                System.out.printf("Raíz 1: %.2f + i.%.2f\n", (-b)/(2*a), (sqrtdelta)/(2*a));<br />                System.out.printf("Raíz 2: %.2f i.%.2f\n", (-b)/(2*a), (sqrtdelta)/(2*a));<br /><br />            }<br /><br />        }<br />        else{<br />            System.out.println("Coeficiente 'a' inválido. Não é uma equação do 2o grau");<br />        }<br />    }<br /><br />}<br />