break i continue

Preview Mode

You're viewing this material in preview mode. Sign up to track your progress and access all features.

break i continue
Required In Progress

Python • kurs podstawowy • lekcja 13

break i continue

Program przegląda numery.

Twój cel: Rozróżnisz zakończenie pętli przez break od pominięcia reszty iteracji przez continue.

Pętle for i while.

Zbuduj model działania

Część trzeba pominąć, a przy wybranej wartości zakończyć całe przeglądanie. break opuszcza najbliższą otaczającą pętlę. continue pomija resztę bieżącej iteracji; w for pobierany jest kolejny element, w while ponownie sprawdzany warunek.

Kolejność instrukcji jest ważna. Jeśli print wystąpi przed continue, wartość zdąży się wyświetlić. Jeśli break wystąpi przed print, kończąca wartość nie zostanie wypisana. Kod po całej pętli nadal się wykonuje.

Przy while uważaj, by continue nie omijało zmiany licznika. Najpierw prześledź drogę przez ciało pętli na kartce. Gdy zwykłe if wystarcza i jest czytelne, nie trzeba dodawać continue.

Przewidź przed uruchomieniem

for number in range(1, 8):
    if number == 6:
        break
    if number % 2 == 0:
        continue
    print(number)
print("Koniec")
Porównaj wynik i prześledź mechanizm
break kończy najbliższą pętlę; continue kończy jedynie jej bieżącą iterację.
break kończy najbliższą pętlę; continue kończy jedynie jej bieżącą iterację.

1, 3 i 5. Dla 2 i 4 continue pomija print. Przy 6 działa break, więc 7 nie jest już pobierane. Po pętli pojawi się Koniec.

Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:

1
3
5
Koniec
number Decyzja Wydruk
1 Zwykły przebieg 1
2 continue brak
3 Zwykły przebieg 3
4 continue brak
5 Zwykły przebieg 5
6 break koniec pętli
Model do prześledzenia: porównaj każdy etap z kodem. Etykiety opisują znaczenie danych, nie tylko ich wygląd.

Zmień działający program

Zmień warunek pomijania tak, aby pomijał wielokrotności 3, a pętla kończyła się przy 6.

Pierwsza wskazówka

Zachowaj działający punkt wyjścia. Zlokalizuj konstrukcję wskazaną w poleceniu i zmień tylko ten etap. Przed uruchomieniem zapisz oczekiwany efekt.

Porównaj swoją modyfikację
for number in range(1, 8):
    if number == 6:
        break
    if number % 3 == 0:
        continue
    print(number)

Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:

1
2
4
5

Znajdź przyczynę problemu

Celowo błędny przykład diagnostyczny. Najpierw postaw hipotezę. Nie kopiuj tej wersji jako poprawnego rozwiązania.

Zamierzone działanie: Pomiń tylko 2, a pozostałe liczby wypisz.

for number in range(1, 6):
    if number == 2:
        break
    print(number)
Trop do diagnozy

Porównaj zamierzony rezultat z typami, nazwami i kolejnością instrukcji. Wskaż pierwsze miejsce, w którym zachowanie odbiega od celu.

Zastosuj w nowej sytuacji

Wskazówka do rozpoczęcia

break kończy najbliższą pętlę; continue kończy jedynie jej bieżącą iterację.

Zacznij od przygotowania danych. Pierwsza instrukcja przykładowego rozwiązania:

for letter in "a-b!c":
Rozwiązanie do samodzielnej kontroli
for letter in "a-b!c":
    if letter == "!":
        break
    if letter == "-":
        continue
    print(letter)

Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:

a
b

Porównaj dane wejściowe, wynik i powód użycia konstrukcji. Inna wersja kodu jest poprawna, jeśli realizuje te same wymagania.

Co zabierasz do kolejnego programu?

break kończy najbliższą pętlę; continue kończy jedynie jej bieżącą iterację.

Bez zaglądania do przykładu wyjaśnij własnymi słowami, jak główna konstrukcja prowadzi od danych do wyniku. Potem sprawdź wyjaśnienie, uruchamiając swój program.