Συνεχίζω την υλοποίηση της δευτεροβάθμιας εξίσωσης σε java σε συνέχεια του νήματος C++ : http://www.satdreamgr.com/forum/linux-18/c-4502/
Είναι λίγο διαφορετικά απο την C++ αλλά η java είναι αρκετά απλούστερη.Code:import java.util.Scanner;
class Quadratic {
private int a;
private int b;
private int c;
//Constructor (κατασκευαστής αντικειμένου κλάσης και αρχικοποίηση μεταβλητών)
Quadratic() {
a = 0;
b = 0;
c = 0;
}
//οι μεταβλητές που θα εισαγάγει ο χρήσης
Quadratic(int newA, int newB, int newC) {
a = newA;
b = newB;
c = newC;
}
//Διεπαφές
public int getA() {
return a;
}
public int getB() {
return b;
}
public int getC() {
return c;
}
//Επιστροφή Διακρίνουσας (b^2-4ac)
public double getDiscriminant() {
return (Math.pow(b, 2) - 4 * a * c);
}
//Eπιστροφή ριζών
public double getRoot1() {
return ((-b + Math.sqrt(getDiscriminant())) / (2 * a));
}
public double getRoot2() {
return ((-b - Math.sqrt(getDiscriminant())) / (2 * a));
}
}
//Κύρια μέθοδος main()
class QuadraticEquation {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Εισάγετε τιμές a, b, και c σε σειρά: ");
int a = input.nextInt();
int b = input.nextInt();
int c = input.nextInt();
Quadratic qe = new Quadratic(a, b, c);
if (qe.getDiscriminant() > 0) {
System.out.println("Οι ρίζες έιναι : " + qe.getRoot1() + " and " + qe.getRoot2());
}
else {
System.out.println("H εξίσωση δεν έχει πραγματικές ή δεν έχει ρίζες.");
}
}
}
Σώνουμε το αρχείο σαν Quadratic.java
Compile :
Εκτέλεση:Code:javac Quadratic.java
Code:java QuadraticEquation
Quote:
Θα δημιουργηθούν 2 αρχεία αλλα θα εκτελεστεί το αρχείο QuadraticEquation.class γιατί αυτό περιέχει την main()