rozwiązania równania kwadratowego-metoda

0

Siema.Miałem do napisania metode wypisujaca rozwiązania równania kwadratowego.Po wprowadzeniu wielu poprawek i zmian nie moge wyeliminować jednego błędu,który kompilator zaznacza mi w 3 linijce kodu.Wspomina coś o boolean,którego nigdzie nie użyłem i nie wiem co jest źle.Będe wdzięczny jak mi ktos wyjaśni w czym jest problem.
PS:nie moge używać wbudowanych metod.

public class zadanie7 {
    public static void main(String[]args)
        {System.out.println(wielomian(3, 3, -3));
        }

    public static void wielomian(double a,double b,double c)
        {double x1, x2, x12;
        if(a!=0)
            {double delta=b*b-4*a*c;
                if(delta>=0)
                    {x1=(- b - Math.sqrt(delta) ) / 2*a +(- b - Math.sqrt(delta) )%2*a;
                    x2=(- b + Math.sqrt(delta) ) / 2*a + (- b + Math.sqrt(delta) )%2*a  ;
                    System.out.println(x1+" i "+x2);
                    }
                else {System.out.println("brak rozwiazan"); }
            }
        else if(b!=0)
                {if(c!=0)
                    {System.out.println("brak rozwiązań"); }
                else{System.out.println("wszystkie liczby rzeczywiste spełniają rónanie"); }
                }
              else {System.out.println(x12=-c/b); }
        }

}

I jeszcze jedno pytanie:jak obliczyć pierwiastek dowolnego stopnia lub przynajmniej kwadratowy z liczby (własna metoda zamiast Math.sqrt)? Jest na to jakiś wzór?

0

chcesz zwrócić wartość czegoś co jest typem void

System.out.println(wielomian(3, 3, -3))

zamień na

wielomian(3,3,-3)
0

Poszukaj wzorów na pierwiastki równania kwadratowego, stosujesz błędne.
Co chcesz wyświetlić tym kodem

System.out.println(x12=-c/b)

Wyświetlisz słowo true lub false.

0

else if(b!=0)
ma być:
else if(b==0)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0