• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

JAVA - Zadanie z if'ami

Object Storage Arubacloud
0 głosów
467 wizyt
pytanie zadane 18 marca 2019 w Java przez Dawidoo98 Użytkownik (600 p.)

Cześć Wam,

tak się zastanawiam, czy da się uprościć jakoś ten kod, który napisałem. Treść polecenia brzmi:

Dane są następujące zbiory: • A = (−15,−10) • B = (−∞,−13) Napisz program sprawdzający czy zmienna int wrt należy do któregoś ze zbioru/ów, czy też nie.

int wrt2 = -9;

        if ((wrt2 > -15) && (wrt2 < -13)) {
            System.out.println("Zmienna wrt2 należy do obu zbiorów");
        } else if ((wrt2 > -13) && (wrt2 < -10)) {
            System.out.println("Zmienna wrt2 należy do jednego ze zbiorów");
        } else if (wrt2 < -15) {
            System.out.println("Zmienna wrt2 należy do jednego ze zbiorów");
        } else if (wrt2 > -10) {
            System.out.println("Zmienna wrt2 nie należy do żadnego ze zbiorów");
        } else if (wrt2 == -10) {
            System.out.println("Zmienna wrt2 nie należy do żadnego ze zbiorów");
        } else if (wrt2 == -13) {
            System.out.println("Zmienna wrt2 należy do jednego ze zbiorów");
        } else if (wrt2 == -15) {
            System.out.println("Zmienna wrt2 należy do jednego ze zbiorów");
        }
    }

 

2 odpowiedzi

+2 głosów
odpowiedź 18 marca 2019 przez Patrycjerz Mędrzec (192,320 p.)
wybrane 18 marca 2019 przez Dawidoo98
 
Najlepsza

Spora część komunikatów powtarza się. Niektóre warunki można przecież połączyć ze sobą, tworząc krótszy kod (ale nie zawsze czytelniejszy). Mogłoby to wyglądać mniej więcej tak:

int wrt2 = -9;
 
        if ((wrt2 <= -15) || ((wrt2 >= -13) && (wrt2 < -10))) {
            System.out.println("Zmienna wrt2 należy do jednego zbioru");
        } else if ((wrt2 > -15) && (wrt2 < -13)) {
            System.out.println("Zmienna wrt2 należy do obu zbiorów");
        } else if (wrt2 >= -10) {
            System.out.println("Zmienna wrt2 nie należy do żadnego ze zbiorów");
        }
    }

komentarz 18 marca 2019 przez Dawidoo98 Użytkownik (600 p.)

Super rozpisane, dzięki wielkie. Wcześniej tego nie mogłem zobaczyć laugh

+1 głos
odpowiedź 18 marca 2019 przez miro Pasjonat (23,870 p.)
Jest kilka rzeczy co mógłbyś spróbować:
ify zamienić na case
użyj spójnik lub → ||
(wrt2 > -15) && (wrt2 < -13) to jest wrt2 == -14
(wrt2 > -13) && (wrt2 < -10) - możesz to zamienić na zmienną boolean lub metodę go zwracający
komentarz 18 marca 2019 przez Dawidoo98 Użytkownik (600 p.)
Dziękuję ślicznie za odpowiedź

Podobne pytania

0 głosów
1 odpowiedź 387 wizyt
pytanie zadane 19 sierpnia 2020 w SPOJ przez Billy Użytkownik (680 p.)
–1 głos
3 odpowiedzi 678 wizyt
0 głosów
4 odpowiedzi 261 wizyt
pytanie zadane 21 września 2015 w C i C++ przez Куба Янчевски Początkujący (390 p.)

92,615 zapytań

141,465 odpowiedzi

319,780 komentarzy

61,997 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...