Mirki mam problema. Robię sobie program w #java do liczenia azymutów, gdzie wczytuję po kolei numer punktu pierwszego oraz współrzędne (czyli Lp1, X1, Y1) oraz punktu drugiego (Lp2, X2, Y2). Chcę zrobić tak, by program powtórzył wczytanie danych, gdy współrzędne są sobie równe (X1==X2; Y1==Y2) oraz nazwy punktów są takie same (Lp1==Lp2). Próbuję to ogarnąć funkcją Do-While
do { //wczytanie nazw punktów oraz współrzędnych} while ( (!(X1!=X2 || Y1!=Y2) && Lp1!=Lp2));
@SuperStefan chcesz powtarzać wprowadzanie danych gdy współrzędne są takie same *oraz* nazwy są takie same? czy wykonywać powtórzenie gdy współrzędne *lub* nazwy są takie same? w tej chwili powtórzenie ci sie wykona gdy nazwy sa różne *i* coś tam coś tam.
pierwsza uwaga: stwórz klasę Point która będzie przechowywać parę X, Y oraz nazwę. niech będzie rozszerzać metodę equals. idea która się za tym kryje to enkapsulacja i jest fundamentalna zasadą
@SuperStefan: Zakładam, że Lp1 i Lp2 to Stringi - porównywanie ich za pomocą == zazwyczaj zwróci false, nawet, gdy mają taką samą wartość. użyj Lp1.equals(Lp2). Google -> Java String comparison
do
{ //wczytanie nazw punktów oraz współrzędnych}
while ( (!(X1!=X2 || Y1!=Y2) && Lp1!=Lp2));
Gdy
pierwsza uwaga: stwórz klasę Point która będzie przechowywać parę X, Y oraz nazwę. niech będzie rozszerzać metodę equals. idea która się za tym kryje to enkapsulacja i jest fundamentalna zasadą