2016-03-19 14 views
-3

さて、私は、二次方程式の判別式と根の数の両方を見つけることができるプログラムを作りたいと思います。私はこれまでに判別式を見つけるプログラムを作成しましたが、根の数を見つける方法を呼び出すのに問題があります。誰かが私にこれをどうやって説明してくれますか?ありがとう。あなたがオブジェクトを作成し、パラメータを持つメソッドを呼び出す方法は?

あなたは今、私はちょうどオブジェクトを作成する(ただし、匿名で)思いになるまでやっている
quadMethods qMet =new quadMethods(); 
qMet.numRoots (...); 

メソッドを呼び出す必要が

public class quadMethods 
{ 
    public static void main (String args[]) 
    { 
     new quadMethods(); 
    } 


    public quadMethods() 
    { 
     System.out.println ("The discriminant is: " + discrim (1, 6, 8)); 
     System.out.println ("The number of roots is: " + numRoots (1, 6, 8)); 
    } 
    public double discrim (double a, double b, double c) 
    { //assumes ax^2+bx+c=0 
     //returns the discriminant of the quadratic equation 
     //b*b-4*a*c 
     //replace the return 1 
    double discriminant = b*b-4*a*c;  
     return discriminant; 
    } 


    public int numRoots (double a, double b, double c) 
    { //assumes ax^2+bx+c=0 
     //returns the number of roots for the quadratic equation 
     //call discrim method, make an if to return 0, 1, or 2. 
     //replace the return 1 
    return 1; 
    } 
} 
+1

そのような質問を編集しないでください。誰かがあなたに答える時間がありました。 –

+0

申し訳ありません。私はこの投稿を削除したいが、私はそうすることはできない。 – asdfghjkl9999

+0

いいえあなたは受け入れられた回答があるので、削除の理由は何ですか? –

答えて

0

ああ、ところで、私が探していた答えは:

public double discrim (double a, double b, double c) 
{ 
    return (b*b)-(4*a*c); 
} 


public int numRoots (double a, double b, double c) 
{ 
double d = discrim (a,b,c); 
if (d>0) 
return 2; 
else if (d<0) 
return 0; 
else 
return 1; 
} 
0
public static void main (String args[]) 
{ 
    quadMethods instance = new quadMethods(); 

    System.out.println(instance.discrim(1.0, 2.0, 3.0)); 

    int myRoots = instance.numRoots(1.0, 2.0, 3.0); 
} 
+0

私はそれを手に入れません。根の数を見つけるコードを追加しようとすると、「discriminant」という名前のフィールドが見つかりませんでした。 – asdfghjkl9999

+0

完全にエラーの詳細を共有できますか? – obe

+0

私の悪いです。それはそうではありません。しかし代わりに、出力は2次方程式が持つ根の数を実際に提供するのではなく、 "判別式は:4.0"のループを維持します。 – asdfghjkl9999

0

...

+0

待ちに待ったが「Missing ';」文の終わりに "qMet.numRoots"とタイプしたときに、 – asdfghjkl9999