- Published on
Swiftda Ichma-ich Looplar (Nested Loops)
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Agar bitta loopning ichida yana boshqa loop bo‘lsa, bu nested loop (ichma-ich loop) deyiladi.
Misol:
// tashqi loop
for i in 1...5 {
// ichki loop
for j in 1...2 {
// code
}
}
Bu yerda j bo‘yicha for-loop — i bo‘yicha for-loopning ichida joylashgan.
1. Swift Nested for Loop
Quyidagi misolda biz 2 hafta ichidagi 7 kunni chiqaramiz:
// Swift program to display 7 days of 2 weeks
// outer loop
for week in 1...2 {
print("Week: \(week)")
// inner loop
for day in 1...7 {
print(" Day: \(day)")
}
// bo'sh qator
print("")
}
Natija:
Week: 1
Day: 1
Day: 2
...
Week: 2
Day: 1
Day: 2
...
Tushuntirish:
- Tashqi loop → 2 marta ishlaydi (
week = 1vaweek = 2). - Ichki loop → har bir haftada 7 marta ishlaydi (
day = 1dan7gacha).
2. Nested while va repeat…while Looplar
Looplar faqat for-loop bilan emas, while yoki repeat…while bilan ham ichma-ich ishlatilishi mumkin.
Misol:
// outer while loop
while condition {
// inner while loop
while condition2 {
// code
}
}
3. for Loop ichida while Loop
Quyidagi misolda biz while loop tashqarida, for loop ichkarida ishlatamiz:
// program to display 7 days of 2 weeks
var weeks = 2
var i = 1
// outer while loop
while (i <= weeks) {
print("Week: \(i)")
// inner for loop
for day in 1...7 {
print(" Day: \(day)")
}
i = i + 1
}
Natija:
Week: 1
Day: 1
Day: 2
...
Week: 2
Day: 1
Day: 2
...
4. break va continue ichma-ich looplarda
1. break — faqat ichki loopni to‘xtatadi
Misol:
for week in 1...3 {
print("Week: \(week)")
for day in 1...7 {
if week == 2 {
break
}
print(" Day: \(day)")
}
print("")
}
Natija:
Week: 1
Day: 1
Day: 2
...
Week: 2
Week: 3
Day: 1
Day: 2
...
Izoh:
week == 2bo‘lganda ichki loop darhol to‘xtaydi.- Tashqi loop esa davom etadi.
2. continue — ichki loopning faqat o‘sha iteratsiyasini o‘tkazadi
Misol:
for week in 1...2 {
print("Week: \(week)")
for day in 1...7 {
if day % 2 != 0 { // agar kun toq bo'lsa
continue // chiqarib o'tkaz
}
print(" Day: \(day)")
}
print("")
}
Natija:
Week: 1
Day: 2
Day: 4
Day: 6
Week: 2
Day: 2
Day: 4
Day: 6
Izoh:
- Toq kunlar (
1,3,5,7) continue tufayli chiqarilmaydi. - Faqat juft kunlar chop qilinadi.