2015-09-19 30 views
0

我一直在努力與我的程序。我必須爲線性方程創建一個對象類。然後我必須有一個測試程序來獲得x和y值。沒有什麼是強調,並在我的書看例子,我只是沒有看到我要去哪裏錯了。有人可以幫我弄清楚如何解決它?我的結果出來爲:如何讓我的對象類正常工作?

「方程無解

方程無解

X是NaN和y爲NaN」

我的對象類是:

private double a, b, c, d, e, f; 

private double x, y; 

public LinearEquation() { 
} 

LinearEquation(double a, double b, double c, double d, double e, double f) { 
} 

public boolean isSolvable() { 
    if (((a * d) - (b * c)) == 0) { 
     System.out.println("The equation has no solution"); 
     return false; 
    } 
    return true; 
} 

public double getX() { 
    if (isSolvable()); 
    x = (((e * d) - (b * f))/((a * d) - (b * c))); 
    return x; 
} 

public double getY() { 
    if (isSolvable()); 
    y = (((a * f) - (e * c))/((a * d) - (b * c))); 
    return y; } 

我的測試類是:

public static void main(String[] args) { 

    double a = 9.0; 
    double b = 4.0; 
    double c = 3.0; 
    double d = -5.0; 
    double e = -6.0; 
    double f = -21.0; 

    LinearEquation numberSet = new LinearEquation(a, b, c, d, e, f); 

    double xValue = numberSet.getX(); 
    double yValue = numberSet.getY(); 

    System.out.println("x is " + xValue + " and y is " + yValue); } 

回答

0

你的構造函數是空的。它應該將參數分配給實例變量。沒有它,你所有的實例變量都是零。

+0

這是你的意思嗎? public LinearEquation(double a,double b,double c,double d,double e,double f){ \t} 我試過了,但仍得到相同的結果。 –

+0

是的。嘗試'public LinearEquation(double a,double b,double c,double d,double e,double f){this.a = a; this.b = b; this.c = c; this.d = d;這e = e; this.f = f; }' – Amadan

+0

它的工作!謝謝! –