İç İçe Döngü
Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası. Ders 49 / 86.
İç içe geçmiş bir döngü, basitçe başka bir döngünün içindeki bir döngüdür. İç döngü, dış döngünün her bir yinelemesi için tüm yinelemelerini tamamlar.
for row in 1...3 {
for col in 1...2 {
print("Row \(row), Col \(col)")
}
}
// Çıktı:
// Satır 1, Sütun 1
// Satır 1, Sütun 2
// Satır 2, Sütun 1
// Satır 2, Sütun 2
// Satır 3, Sütun 1
// Satır 3, Sütun 2row'un her bir değeri için, iç döngü col'un tüm değerleri boyunca tamamen çalışır. Böylece 3 dış yineleme ve 2 iç yineleme ile, içerideki kod toplamda 6 kez çalışır (3 × 2).
İç içe döngüler, ızgara benzeri yapılarla çalışmak veya desenler oluşturmak için yaygın olarak kullanılır.
İşte yıldızlardan oluşan basit bir dikdörtgen yazdıran bir örnek:
for row in 1...2 {
for col in 1...4 {
print("*", terminator: "")
}
print("") // Bir sonraki satıra geç
}
// Çıktı:
// ****
// ****terminator: "" ifadesi, print fonksiyonunun yeni bir satır eklemesini engeller, böylece yıldızlar aynı satırda görünür. İç döngü bittikten sonra, print("") bir sonraki satıra geçer.
Görev
KolayGirdiden iki tam sayı okuyun: rows ve cols. Her hücrenin kendi satır numarası ile sütun numarasının çarpımını gösterdiği bir sayı ızgarası yazdırmak için iç içe döngüler kullanın.
Aşağıdaki girdileri alacaksınız:
- Birinci satır: satır sayısı (örneğin,
"3") - İkinci satır: sütun sayısı (örneğin,
"4")
Gereksinimler:
- Satırlar için bir dış döngü kullanın (1'den
rowsdeğerine kadar) - Sütunlar için bir iç döngü kullanın (1'den
colsdeğerine kadar) - Mevcut satır ve sütun numaralarının çarpımını yazdırın
- Aynı satırdaki değerleri bir boşlukla ayırın
- Her satır kendi satırında olmalıdır
İpucu: Değerleri aynı satırda tutmak için terminator: " " kullanın, ardından bir sonraki satıra geçmek için iç döngüden sonra print("") kullanın.
Örneğin, rows değeri 3 ve cols değeri 4 ise, çıktı şöyle olmalıdır:
1 2 3 4
2 4 6 8
3 6 9 12 Kendin dene
let rows = Int(readLine()!)!
let cols = Int(readLine()!)!
// YAPILACAK: Kodunuzu aşağıya yazın
// Bir çarpım tablosu yazdırmak için iç içe döngüler kullanın
// Dış döngü: satırlar arasında gezinin (1'den rows'a kadar)
// İç döngü: sütunlar arasında gezinin (1'den cols'a kadar)
// Satır * sütun çarpımını yazdırın
// Değerleri aynı satırda tutmak için print(..., terminator: " ") kullanın
// Bir sonraki satıra geçmek için iç döngüden sonra print("") kullanınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerMod OperatörüBileşik AtamaTekrar - Basit MatematikKarşılaştırma Operatörleri7Temel Girdi/Çıktı
Print FonksiyonuDize EnterpolasyonuReadLine ile GirdiTür DönüşümüTekrar - 120'ye KadarTekrar - Doğru mu Yanlış mı10Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriArgüman EtiketleriTekrar - Sigma FonksiyonuTekrar - Doğrulama FonksiyonuVarsayılan Değerler13Diziler Üzerinde Yineleme
Öğeler Üzerinde YinelemeEnumerate YöntemiDizeler Üzerinde Yineleme P1Dizeler Üzerinde Yineleme P22Değişkenler
Let ve VarTür AnotasyonlarıSayılarStringBooleanAdlandırma KurallarıTekrar - Değişkenleri Başlat5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Tekrar - Basit MantıkMantıksal Operatörler Bölüm 3Üçlü Operatör8Hesap Bölüştürme Hesaplayıcısı
Karşılama MesajıGirdi Alma11FizzBuzz'a Farklı Bir Yorum
Oyuna Genel BakışFizzBuzz Fonksiyonu3Optional Değerler
Optional Değerler NedirIf Let ile AçmaGuard LetNil Birleştirme OperatörüTekrar - Güvenli Açma9Döngüler
For-In DöngüsüWhile DöngüsüRepeat-While DöngüsüBreakContinueTekrar - FaktöriyelDöngülerde Aralıklarİç İçe DöngüTekrar - Dinamik GirdiKendi başına pratik yap: Swift playground