I dette programmet lærer du å finne alle røttene til en kvadratisk ligning og skrive dem ut ved hjelp av format () i Java.
For å forstå dette eksemplet, bør du ha kunnskap om følgende Java-programmeringsemner:
- Java if… else Erklæring
- Java Math sqrt ()
Standardformen for en kvadratisk ligning er:
ax2 + bx + c = 0
Her er a, b og c reelle tall og a kan ikke være lik 0.
Vi kan beregne roten til en kvadratisk ved å bruke formelen:
x = (-b ± √(b2-4ac)) / (2a)
Den ±
tegn tyder på at det vil være to røtter:
root1 = (-b + √(b2-4ac)) / (2a) root1 = (-b - √(b2-4ac)) / (2a)
Begrepet er kjent som determinanten for en kvadratisk ligning. Den spesifiserer arten til røttene. Det er,b2-4ac
- hvis determinant> 0 , er røttene ekte og forskjellige
- hvis determinant == 0 , er røttene ekte og like
- hvis determinant <0 , er røttene komplekse og forskjellige
Eksempel: Java-program for å finne røtter i en kvadratisk ligning
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); ) ) )
Produksjon
root1 = -0,87 + 1,30i og root2 = -0,87-1,30i
I det ovennevnte programmet er koeffisientene a, b og c satt til henholdsvis 2.3, 4 og 5.6. Deretter determinant
beregnes den som .b2
- 4ac
Basert på verdien av determinanten beregnes røttene som gitt i formelen ovenfor. Legg merke til at vi har brukt biblioteksfunksjon for Math.sqrt()
å beregne kvadratroten til et tall.
Vi har brukt format()
metoden til å trykke de beregnede røttene.
Den format()
Funksjonen kan også erstattes med printf()
for eksempel:
System.out.printf("root1 = root2 = %.2f;", root1);