Witam, dopiero zaczynam znajomosc z Java, stad moje moze i glupie pytanie. Ale wole wiedziec czy robie cos zle, czy jest ok.
mam takie zadanie:
"1. Napisać program, z podziałem na metody, do rozwiązywania równania kwadratowego ax2+bx+c=0, gdzie dane będą zaczytywane z klawiatury (jak nie znajdziecie ja to zrobić, pokażę na laboratorium). Pamiętajcie, że wszystkie metody muszą być statyczne i wszelkie pola również. Podział na 3 metody: do wczytywania danych, do liczenia wyników, to pokazywania."
moje rozwiazanie:
import javax.swing.*;
public class wielomian {
private static double a;
private static double b;
private static double c;
private static double delta;
private static double p_delta;
private static double p1;
private static double p2;
private static double p0;
public static void main(String[] args)
{
wprowadz();
policz();
pokaz();
}
public static void wprowadz()
{
String dane_a = JOptionPane.showInputDialog("Podaj wspolczynnik a: ");
a = Double.parseDouble(dane_a);
String dane_b = JOptionPane.showInputDialog("Podaj wspolczynnik b: ");
b = Double.parseDouble(dane_b);
String dane_c = JOptionPane.showInputDialog("Podaj wspolczynnik c: ");
c = Double.parseDouble(dane_c);
}
private static void policz()
{
delta = b*b - (4*a*c);
System.out.println("Delta wynosi: " + delta);
p_delta = Math.sqrt(delta);
if(delta>0)
{
p1 = (-b - p_delta)/(2*a);
p2 = (-b + p_delta)/(2*a);
}
if(delta == 0)
{
p0 = (-b)/(2*a);
}
}
public static void pokaz()
{
if(delta>0)
{
System.out.println("x1 = " + p1 + ", x2 = " + p2);
}
else if(delta == 0)
{
System.out.println("x0 = " + p0);
}
else
{
System.out.println("Delta < 0. Brak pierwiastkow!");
}
}
}
Czy poprawnie wykonalem to zadanie? Jesli nie, to prosze o sugestie co trzeba poprawic/zmienic..