Programa Java para encontrar todas las raíces de una ecuación cuadrática

En este programa, aprenderá a encontrar todas las raíces de una ecuación cuadrática e imprimirlas usando format () en Java.

Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de Java:

  • Declaración if … else de Java
  • Java matemático sqrt ()

La forma estándar de una ecuación cuadrática es:

 ax2 + bx + c = 0

Aquí, a, byc son números reales y a no puede ser igual a 0.

Podemos calcular la raíz de una cuadrática usando la fórmula:

 x = (-b ± √(b2-4ac)) / (2a)

El ±letrero indica que habrá dos raíces:

 root1 = (-b + √(b2-4ac)) / (2a) root1 = (-b - √(b2-4ac)) / (2a)

El término se conoce como determinante de una ecuación cuadrática. Especifica la naturaleza de las raíces. Es decir,b2-4ac

  • si determinante> 0 , las raíces son reales y diferentes
  • si determinante == 0 , las raíces son reales e iguales
  • si determinante <0 , las raíces son complejas complejas y diferentes

Ejemplo: programa Java para encontrar raíces de una ecuación cuadrática

 public class Main ( public static void main(String() args) ( // value a, b, and c double a = 2.3, b = 4, c = 5.6; double root1, root2; // calculate the determinant (b2 - 4ac) double determinant = b * b - 4 * a * c; // check if determinant is greater than 0 if (determinant> 0) ( // two real and distinct roots root1 = (-b + Math.sqrt(determinant)) / (2 * a); root2 = (-b - Math.sqrt(determinant)) / (2 * a); System.out.format("root1 = %.2f and root2 = %.2f", root1, root2); ) // check if determinant is equal to 0 else if (determinant == 0) ( // two real and equal roots // determinant is equal to 0 // so -b + 0 == -b root1 = root2 = -b / (2 * a); System.out.format("root1 = root2 = %.2f;", root1); ) // if determinant is less than zero else ( // roots are complex number and distinct double real = -b / (2 * a); double imaginary = Math.sqrt(-determinant) / (2 * a); System.out.format("root1 = %.2f+%.2fi", real, imaginary); System.out.format("root2 = %.2f-%.2fi", real, imaginary); ) ) )

Salida

 root1 = -0.87 + 1.30i y root2 = -0.87-1.30i

En el programa anterior, los coeficientes a, byc se establecen en 2,3, 4 y 5,6 respectivamente. Entonces, determinantse calcula como .b2 - 4ac

Con base en el valor del determinante, las raíces se calculan como se indica en la fórmula anterior. Observe que hemos usado la función de biblioteca Math.sqrt()para calcular la raíz cuadrada de un número.

Hemos utilizado el format()método para imprimir las raíces calculadas.

La format()función también se puede reemplazar por printf():

 System.out.printf("root1 = root2 = %.2f;", root1);

Articulos interesantes...