Pętle WHILE - INSTRUKCJA BREAK |
Instrukcje dodatkowe - Programowanie w języku JAVA | ||||||
Wpisany przez Administrator | ||||||
Strona 3 z 4
INSTRUKCJA BREAK:Poznaliśmy trzy rodzaje iteracji: a) pętla for (dla instrukcji powtarzalnych określoną ilość razy) b) pętla do..while (która wykonuje się przynajmniej jeden raz oraz kolejne razy, dopóki warunek podany w nawiasie jest spełniony) c) pętla while (która zaczyna się wykonywać dopiero, kiedy nastąpi sprawdzenie warunku podanego w nawiasie i trwa dopóki jest o spełniony)
Niekiedy jednak, niezależnie od tego, czy warunek działania pętli jest spełniony potrzebna jest instrukcja przerywająca pętlę. Taką instrukcją jest właśnie BREAK. Zilustrujmy to na przykładzie: Zadanie 2: Napisz program, który prosi użytkownika o podanie kolejnych liczb dodatnich, które później wyświetla. Wyjątek stanowi podanie przez użytkownika wartości '303', kiedy program przerywa etap podawania danych, wyświetla zdanie "Podałeś magiczną liczbę: numer polskiego dywizjonu sił powietrznych w Wielkiej Brytanii im. Tadeusza Kościuszkii. Nie musisz podawać więcej danych..." Listing: W linijkach 24-30 dodaliśmy instrukcję warunkową IF. która sprawdza, czy użytkownik nie podał czasem wartości 303. Z powodów praktycznych długi komunikat rozbiliśmy na kilka instrukcji System.out.print (zamiast jednej System.out.println) - aby zrzut z kodem programu nie był zbyt szeroki. Przy okazji przypomnieliśmy sobie o różnicy między tymi dwiema instrukcjami. W linijce 29 zastosowaliśmy instrukcję BREAK, która kończy działanie pętli, w której się znajduje. Zauważ, że instrukcja else z linijki 31 odnosi się do instrukcji (if z>0) z linijki 21. Wprowadziliśmy ją po to, aby program wyświetlał komunikat o podaniu wartości mniejszej niż zero tylko w przypadku podania takiej wartości, a nie po każdorazowym przerwaniu pętli (gdybyśmy tak nie zrobili, komunikat: "Podano wartość <= 0, koniec wprowadzania danych..." pojawiałby się także po podaniu wartości 303, co byłoby nielogiczne).
Wynik uruchomienia programu:
Dla pewności sprawdzamy, czy nadal program obsługuje "puste" macierze: Zadanie do samodzielnego wykonania: Zadanie 3 Zmodyfikuj powyższy program tak, aby, podobnie jak w przypadku podania wartości "303" wyświetlał adekwatne informacje po wprowadzeniu wartości 1410, 966, 1918 (odzyskanie niepodległości).
|