У овом чланку ћете научити о угнежђеним петљама и како то функционише, са примерима.
Ако петља постоји унутар тела друге петље, она се назива угнежђена петља. Ево примера угнежђене фор-ин петље.
за и у 1… 5 (// изјаве спољне петље за ј у 1… 2 (// изјаве унутрашње петље) // изјаве ектерналлооп)
Овде се for j in 1… 2
петља позната као унутрашња петља налази унутар тела for i in 1… 5
познате као спољна петља.
Треба напоменути да угнежђена петља можда неће садржати петље истог типа. На пример, можете ставити вхиле петљу унутар тела фор петље и то је и даље угнежђена петља.
Брза угнежђена петља за улазак
Угнеждена петља фор-ин садржи петљу фор-ин као израз унутар друге фор-ин петље. Можете имати било који број угнежђених петљи за улазак према потреби.
Пример 1: Брза угнежђена петља за улазак
for i in 1… 5 ( print("Outer loop iteration ", i) for j in 1… 2 ( print("Inner loop iteration ", j) print("i = (i); j = (j)") ) )
Када покренете програм, излаз ће бити:
Итерација спољне петље 1 Итерација унутрашње петље 1 и = 1; ј = 1 итерација унутрашње петље 2 и = 1; ј = 2 итерација спољне петље 2 итерација унутрашње петље 1 и = 2; ј = 1 итерација унутрашње петље 2 и = 2; ј = 2 итерација спољне петље 3 итерација унутрашње петље 1 и = 3; ј = 1 итерација унутрашње петље 2 и = 3; ј = 2 итерација спољне петље 4 итерација унутрашње петље 1 и = 4; ј = 1 итерација унутрашње петље 2 и = 4; ј = 2 итерација спољне петље 5 итерација унутрашње петље 1 и = 5; ј = 1 итерација унутрашње петље 2 и = 5; ј = 2
У горе наведеном програму, спољна петља се понавља пет пута. У свакој итерацији спољне петље, унутрашња петља се понавља 2 пута.
Брзо угнежђено док петља
Угнеждена вхиле петља садржи вхиле петљу као израз унутар друге вхиле петље. Можете имати било који број угнежђених вхиле петљи по потреби.
Пример 2: Брзо угнежђено док петља
var i = 1 while i <= 5 ( print("Outer loop iteration ", i) var j = 1 while j <= 2 ( print("Inner loop iteration ", j) print("i = (i); j = (j)") j += 1 ) i += 1 )
Резултат програма је исти као и горњи програм.
Брза угнежђена петља понављања
Угнијежђена понављања вхиле петља садржи понављање-вхиле петљу као израз унутар друге лооп-а репеат-вхиле. Можете имати било који број угнежђених вхиле петљи по потреби.
Пример 3: Брза угнежђена понављања током понављања
var i = 1 repeat ( print("Outer loop iteration ", i) var j = 1 repeat ( print("Inner loop iteration ", j) print("i = (i); j = (j)") j += 1 ) while (j <= 2) i += 1 ) while (i <= 5)
Резултат програма је исти као и горњи програм.
Брза угнежђена петља различитих типова
Није неопходно имати угнежђене петље истог типа. Такође можете да креирате варијације угнежђених петљи стављањем врсте петље унутар других врста петљи.
Пример 3: Брза угнежђена петља вхиле и фор
Програм у наставку садржи угнежђену петљу различитих типова (вхиле и фор-ин лооп).
var i = 1 while i <= 5 ( print("Outer loop iteration ", i) for j in 1… 2 ( print("Inner loop iteration ", j) print("i = (i); j = (j)") ) i += 1 )
Резултат програма је исти као и горњи програм.
Пример 4: Програм за креирање узорка са Свифт петљама
Угњежђене петље се често користе за креирање образаца у програмирању. Испод програм показује како можете створити једноставан образац помоћу угнежђених петљи.
let rows = 5 for i in 1… rows ( for j in 1… i ( print("(j) ", terminator: "") ) print("") )
Када покренете програм, излаз ће бити:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5