2016-03-19 3 views
-3

Итак, я хочу создать программу, которая может найти как дискриминант квадратичного уравнения, так и количество корней. Я до сих пор создал программу для поиска дискриминанта, но мне трудно вызвать метод, чтобы найти количество корней. Может кто-нибудь, пожалуйста, объясните мне, как это делается? Благодарю.Как вызвать метод с параметрами?

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

Я не понимаю. когда я пытаюсь добавить свой код, чтобы найти количество корней, он по-прежнему говорит, что не было найдено поля с именем «discinant» – asdfghjkl9999

+0

Не должно этого ... вы можете поделиться полной информацией об ошибке? – obe

+0

Мой плохой. Это не то, что он делает. Но вместо этого выход продолжает цикл «Дискриминант: 4.0» вместо фактического предоставления числа корней, которое имеет квадратичное уравнение. – asdfghjkl9999

0

Вам нужно создать объект и вызвать метод

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

Что вы делаете до сих пор я бы просто создать объект (но анонимно) ...

+0

Подождите, но он говорит: «Отсутствует»; в конце заявления «когда я набрал« qMet.numRoots » – asdfghjkl9999

Смежные вопросы