2016-03-19 7 views
-3

Okay, ich möchte ein Programm erstellen, das sowohl die Diskriminante einer quadratischen Gleichung als auch die Anzahl der Wurzeln finden kann. Ich habe bis jetzt das Programm erstellt, um die Diskriminante zu finden, aber ich habe Probleme, die Methode aufzurufen, um die Anzahl der Wurzeln zu finden. Kann mir bitte jemand erklären, wie das gemacht wird? Vielen Dank.Wie wird eine Methode mit Parametern aufgerufen?

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

Bearbeiten Sie Ihre Frage nicht so, jemand hat sich Zeit genommen, Ihnen zu antworten. –

+0

Entschuldigung. Ich möchte diesen Beitrag löschen, aber ich kann es nicht tun. – asdfghjkl9999

+0

Nein, da Sie eine akzeptierte Antwort haben, was ist der Grund für das Löschen? –

Antwort

0

Oh übrigens, die Antwort, die ich suchte, war:

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

Ich verstehe es nicht. wenn ich versuche, meinen Code hinzuzufügen, um die Anzahl der Wurzeln zu finden, sagt es immer noch, dass kein Feld namens "discriminant" gefunden wurde – asdfghjkl9999

+0

Es sollte nicht das tun ... können Sie die vollständigen Fehlerdetails teilen? – obe

+0

Mein schlechtes. Das ist nicht was es tut. Stattdessen gibt die Ausgabe die Schleife "Die Diskriminante ist: 4.0" weiter, anstatt tatsächlich die Anzahl der Wurzeln zu liefern, die die quadratische Gleichung hat. – asdfghjkl9999

0

Sie benötigen

quadMethods qMet =new quadMethods(); 
qMet.numRoots (...); 

ein Objekt und rufen Sie die Methode zu schaffen, was Sie tun, bis jetzt habe ich ein Objekt nur zu schaffen (aber anonym) ...

+0

Warte, aber es heißt "Vermisst"; am Ende der Anweisung "wenn ich" qMet.numRoots "eingegeben habe – asdfghjkl9999