Instrukcja break
Część sekcji Podstawy ścieżki PHP w Coddy. Lekcja 51 z 71.
Czasami trzeba wcześniej przerwać pętlę, zanim zakończy się ona w naturalny sposób. Instrukcja break pozwala zrobić dokładnie to. Natychmiast zatrzymuje pętlę i przechodzi do kodu, który znajduje się za nią.
Wyobraź sobie, że szukasz określonej wartości w tablicy. Gdy ją znajdziesz, nie ma sensu sprawdzać pozostałych elementów. Użycie break pozwala uniknąć niepotrzebnych iteracji.
<?php
$numbers = [3, 7, 2, 9, 5, 1];
foreach ($numbers as $num) {
if ($num === 9) {
echo "Found 9!\n";
break;
}
echo "Checking $num\n";
}
echo "Search complete";
?>To wyświetla:
Checking 3
Checking 7
Checking 2
Found 9!
Search completeZauważ, że wartości 5 i 1 nigdy nie są sprawdzane. Gdy pętla napotka 9, break całkowicie kończy pętlę, a wykonanie przechodzi do „Search complete”.
Instrukcja break działa ze wszystkimi rodzajami pętli: for, while i foreach. Jest szczególnie przydatna podczas wyszukiwania czegoś lub gdy określony warunek oznacza, że pętla powinna natychmiast się zatrzymać.
Wyzwanie
ŁatwyWczytaj dwa wiersze danych wejściowych:
- Listę liczb oddzielonych przecinkami (np.
4,8,15,16,23,42) - Liczbę, której należy szukać
Użyj pętli foreach, aby przeszukać tablicę w poszukiwaniu szukanej liczby. Gdy ją znajdziesz, wypisz Found [target] at index [index]! i użyj break, aby natychmiast zakończyć pętlę.
Jeśli pętla zakończy się bez znalezienia szukanej liczby, wypisz [target] not found.
Podpowiedź: Użyj składni klucz-wartość w pętli foreach, aby śledzić indeks.
Przykład 1:
Jeśli danymi wejściowymi są 10,25,30,45,50 i 30, wynikiem powinno być:
Found 30 at index 2!Przykład 2:
Jeśli danymi wejściowymi są 5,10,15,20,25 i 20, wynikiem powinno być:
Found 20 at index 3!Przykład 3:
Jeśli danymi wejściowymi są 1,2,3,4,5 i 99, wynikiem powinno być:
99 not foundSpróbuj swoich sił
<?php
// Odczytaj dane wejściowe
$numbers = explode(',', trim(fgets(STDIN)));
$target = trim(fgets(STDIN));
// TODO: Napisz swój kod poniżej
// Użyj pętli foreach ze składnią klucz-wartość, aby wyszukać szukaną wartość
// Po znalezieniu wypisz "Found [target] at index [index]!" i przerwij pętlę
// Jeśli po zakończeniu pętli nie znaleziono szukanej wartości, wypisz "[target] not found"
?>Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory porównania i logiczne
Operatory porównaniaRówność i tożsamośćOperatory logiczne — część 1Operatory logiczne — część 2Powtórka — prosta logika2Zmienne i typy danych
LiczbyCiągi znaków i cudzysłowyWartości logiczneKonwencje nazewnictwaPodsumowanie — inicjalizacja zmiennychPuste zmienneŁączenie ciągów znakówPobieranie danych od użytkownikaKonwersja na inne typy5Instrukcje warunkowe
Instrukcja ifIf - elseOperator trójargumentowyOperator null coalescingInstrukcja switchPodsumowanie — podejmowanie decyzji3Podstawowe operatory
Operatory arytmetyczneOperator moduloOperator potęgowaniaPrzypisanie złożoneInkrementacja/dekrementacjaPriorytet operatorówPowtórka — proste obliczeniaOperatory łańcuchów znakówPoćwicz samodzielnie: Kompilator PHP online