Perl - pętle
Może zaistnieć sytuacja, w której trzeba będzie kilkakrotnie wykonać blok kodu. Ogólnie instrukcje są wykonywane sekwencyjnie: pierwsza instrukcja funkcji jest wykonywana jako pierwsza, po niej następuje druga i tak dalej.
Języki programowania zapewniają różne struktury kontrolne, które pozwalają na bardziej skomplikowane ścieżki wykonywania.
Instrukcja pętli pozwala nam wielokrotnie wykonać instrukcję lub grupę instrukcji, a następująca po niej jest ogólną postacią instrukcji pętli w większości języków programowania -
Język programowania Perl udostępnia następujące typy pętli do obsługi wymagań dotyczących pętli.
Sr.No. | Typ i opis pętli |
---|---|
1 | pętla while Powtarza instrukcję lub grupę instrukcji, gdy dany warunek jest prawdziwy. Testuje warunek przed wykonaniem treści pętli. |
2 | aż do pętli Powtarza stwierdzenie lub grupę instrukcji, aż dany warunek stanie się prawdziwy. Testuje warunek przed wykonaniem treści pętli. |
3 | dla pętli Wykonuje sekwencję instrukcji wiele razy i skraca kod zarządzający zmienną pętli. |
4 | pętla foreach Pętla foreach wykonuje iterację po normalnej wartości listy i ustawia zmienną VAR jako każdy element listy po kolei. |
5 | zrobić ... pętla while Podobnie jak instrukcja while, z tą różnicą, że testuje warunek na końcu treści pętli |
6 | pętle zagnieżdżone Możesz użyć jednej lub więcej pętli wewnątrz dowolnej innej pętli while, for lub do..while. |
Instrukcje sterowania pętlą
Instrukcje sterujące pętlą zmieniają wykonanie z jego normalnej sekwencji. Gdy wykonanie opuszcza zakres, wszystkie automatyczne obiekty utworzone w tym zakresie są niszczone.
Perl obsługuje następujące instrukcje sterujące. Kliknij poniższe łącza, aby sprawdzić ich szczegóły.
Sr.No. | Oświadczenie i opis kontroli |
---|---|
1 | następne oświadczenie Powoduje, że pętla pomija pozostałą część swojego ciała i natychmiast ponownie testuje swój stan przed ponownym wyrażeniem. |
2 | ostanie oswiadczenie Kończy instrukcję pętli i przenosi wykonanie do instrukcji bezpośrednio po pętli. |
3 | kontynuuj oświadczenie Kontynuacja BLOKU jest zawsze wykonywana tuż przed ponownym obliczeniem warunku. |
4 | instrukcja ponownego wykonania Polecenie redo restartuje blok pętli bez ponownego oceniania warunku. Blok kontynuacji, jeśli istnieje, nie jest wykonywany. |
5 | instrukcja goto Perl obsługuje polecenie goto w trzech formach: goto label, goto expr oraz goto & name. |
Nieskończona pętla
Pętla staje się nieskończoną pętlą, jeśli warunek nigdy nie staje się fałszywy. Plikforpętla jest tradycyjnie używana do tego celu. Ponieważ żadne z trzech wyrażeń tworzących rozszerzeniefor pętli są wymagane, możesz utworzyć nieskończoną pętlę, pozostawiając puste wyrażenie warunkowe.
#!/usr/local/bin/perl
for( ; ; ) {
printf "This loop will run forever.\n";
}
Możesz zakończyć powyższą nieskończoną pętlę, naciskając klawisze Ctrl + C.
W przypadku braku wyrażenia warunkowego przyjmuje się, że jest ono prawdziwe. Możesz mieć wyrażenie inicjujące i inkrementujące, ale jako programista częściej używaj konstrukcji for (;;) do oznaczenia nieskończonej pętli.