- gniazdowanie określonych pętli:
Jeśli obie pętle są określonymi pętlami, obowiązują następujące wytyczne:
-Zewnętrzna pętla musi być kontrolowana przy użyciu określonego warunku zawęcia pętli, a wewnętrzna pętla musi być również kontrolowana przy użyciu określonego warunku zawartości pętli.
- Wewnętrzna pętla iteruje pełny zestaw iteracji dla każdej iteracji zewnętrznej pętli, a pętla zewnętrzna iterowało cały zestaw iteracji, gdy pętla wewnętrzna wypełni każdą z zestawów iteracji.
- gniazdowanie nieokreślonych pętli:
Jeśli obie pętle są pętlami nieokreślonymi, obowiązują następujące wytyczne:
- Każda pętla musi być kontrolowana przy użyciu warunku nieokreślonego korpusu pętli.
- Każda pętla może potencjalnie wykonać w nieskończoność.
- Jeśli jedna z pętli wykonuje się w nieskończoność, a druga nie, proces pętli nigdy się nie skończy.
- gniazdowanie określonej i nieokreślonej pętli:
Jeśli jedna z pętli jest określoną pętlą, a drugą jest pętla nieokreślona, stosowane są wytyczne dotyczące pętli nieokreślonych.
Oto przykład zagnieżdżonych pętli w JavaScript w celu znalezienia głównych czynników danej liczby:
`` JavaScript
funkcja FindPrimeFactors (liczba) {
// Zainicjuj pustą tablicę, aby przechowywać czynniki podstawowe
niech primeFactors =[];
// iteruj wszystkie liczby od 2 do pierwiastka kwadratowego numeru wejściowego
for (niech i =2; i <=math.sqrt (liczba); i ++) {
// Jeśli numer wejściowy jest podzielony przez bieżącą liczbę bez reszty
while (liczba % i ==0) {
// Dodaj bieżącą liczbę do listy czynników pierwotnych
PrimeFactors.push (i);
// Podziel numer wejściowy przez bieżącą liczbę
liczba /=i;
}
}
// Jeśli numer wejściowy jest większy niż 1, jest to numer pierwotny, więc dodaj go do listy
if (liczba> 1) primeFactors.push (liczba);
// Zwróć listę czynników pierwszych
powrót primeFactors;
}
`` `
W powyższym przykładzie zewnętrzna pętla iteruje wszystkie liczby od 2 do pierwiastka kwadratowego numeru wejściowego. Dla każdej wartości „i” wewnętrzny `` pętla sprawdza, czy numer wejściowy jest podzielny przez „i”. Jeśli tak jest, wewnętrzna pętla dzieli liczbę przez „ja”, dopóki nie będzie już możliwa, dodając każde „ja” do tablicy „PrimeFactors”. Po zakończeniu wewnętrznej pętli zewnętrzna pętla przenosi się do następnej wartości „i”. Proces trwa do momentu, gdy numer wejściowy nie będzie już podzielony przez żadne liczby inne niż siebie. W tym momencie numer wejściowy jest prime i jest dodawany do tablicy „PrimeFactors”. Wreszcie funkcja zwraca tablicę „PrimeFactors”.
Pętle gniazdowe można użyć do rozwiązania różnych problemów wymagających iteracji wielu sekwencji lub struktur danych. Pozwalają tworzyć złożone struktury kontrolne i wykonywać różne operacje w oparciu o kombinacje warunków.