Java-programma om alle wortels van een kwadratische vergelijking te vinden

In dit programma leer je alle wortels van een kwadratische vergelijking te vinden en ze af te drukken met format () in Java.

Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende Java-programmeeronderwerpen:

  • Java if… else-instructie
  • Java Math sqrt ()

De standaardvorm van een kwadratische vergelijking is:

 ax2 + bx + c = 0

Hier zijn a, b en c reële getallen en kan a niet gelijk zijn aan 0.

We kunnen de wortel van een kwadratisch berekenen door de formule te gebruiken:

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

Het ±teken geeft aan dat er twee wortels zullen zijn:

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

De term staat bekend als de determinant van een kwadratische vergelijking. Het specificeert de aard van wortels. Dat is,b2-4ac

  • als determinant> 0 , zijn wortels echt en verschillend
  • als determinant == 0 , zijn wortels echt en gelijk
  • als determinant <0 , wortels zijn complex complex en verschillend

Voorbeeld: Java-programma om de wortels van een kwadratische vergelijking te vinden

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

Uitvoer

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

In het bovenstaande programma worden de coëfficiënten a, b en c ingesteld op respectievelijk 2,3, 4 en 5,6. Vervolgens wordt de determinantberekend als .b2 - 4ac

Op basis van de waarde van de determinant worden de wortels berekend zoals gegeven in de bovenstaande formule. Merk op dat we de bibliotheekfunctie hebben gebruikt Math.sqrt()om de vierkantswortel van een getal te berekenen.

We hebben de format()methode gebruikt om de berekende wortels af te drukken.

De format()functie kan ook worden vervangen door printf()als:

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

Interessante artikelen...