Programma Java per trovare tutte le radici di un'equazione quadratica

In questo programma imparerai a trovare tutte le radici di un'equazione quadratica e stamparle usando format () in Java.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:

  • Istruzione Java if … else
  • Java Math sqrt ()

La forma standard di un'equazione quadratica è:

 ax2 + bx + c = 0

Qui, a, bec sono numeri reali e a non può essere uguale a 0.

Possiamo calcolare la radice di un quadratico usando la formula:

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

Il ±segno indica che ci saranno due radici:

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

Il termine è noto come determinante di un'equazione quadratica. Specifica la natura delle radici. Questo è,b2-4ac

  • se determinante> 0 , le radici sono reali e diverse
  • se determinante == 0 , le radici sono reali e uguali
  • se determinante <0 , le radici sono complesse complesse e differenti

Esempio: programma Java per trovare le radici di un'equazione quadratica

 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); ) ) )

Produzione

 root1 = -0,87 + 1,30i e root2 = -0,87-1,30i

Nel programma precedente, i coefficienti a, bec sono impostati rispettivamente su 2,3, 4 e 5,6. Quindi, determinantviene calcolato come .b2 - 4ac

In base al valore del determinante, le radici vengono calcolate come indicato nella formula sopra. Si noti che abbiamo utilizzato la funzione di libreria Math.sqrt()per calcolare la radice quadrata di un numero.

Abbiamo utilizzato il format()metodo per stampare le radici calcolate.

La format()funzione può anche essere sostituita da printf()come:

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

Articoli interessanti...