Stride (Adım)
Coddy'nin Swift Journey'sinin Mantık ve Akış bölümünün bir parçası — ders 8 / 56.
Bir aralık her seferinde bir adım ilerler. Farklı bir adım boyutu istediğinizde veya geriye doğru saymak istediğinizde stride kullanın.
İki türü vardır: stride(from:to:by:) ikinci değerden önce durur (yarı açık), stride(from:through:by:) ise onu dahil edebilir (kapalı):
for n in stride(from: 0, to: 10, by: 2) {
print(n)
}
// 0, 2, 4, 6, 8for n in stride(from: 10, through: 0, by: -2) {
print(n)
}
// 10, 8, 6, 4, 2, 0by: argümanı doğru işarete sahip olmalıdır: yukarı doğru sayarken pozitif, aşağı doğru sayarken negatif. Uyuşmazlık durumunda döngü sıfır kez çalışır.
Görev
KolayÜç tam sayı okuyun (üç satır): start, end, step. Adım (step) pozitif veya negatif olabilir. Aralık her iki uçta da dahildir (stride(from:through:by:) kullanın).
Şunları yazdırın:
- Stride içindeki değerler,
,ile birleştirilmiş şekilde - Üretilen değerlerin sayısı
0 / 10 / 3 girişi için çıktı şöyledir:
0,3,6,9
410 / 0 / -2 girişi için çıktı şöyledir:
10,8,6,4,2,0
6Kopya kağıdı
Özel bir adım boyutu gerektiğinde veya geriye doğru saymak istediğinizde stride kullanın.
stride(from:to:by:) — yarı açık (bitiş değerini hariç tutar):
for n in stride(from: 0, to: 10, by: 2) { }
// 0, 2, 4, 6, 8stride(from:through:by:) — kapalı (bitiş değerini dahil eder):
for n in stride(from: 10, through: 0, by: -2) { }
// 10, 8, 6, 4, 2, 0by: değeri yönle eşleşmelidir: yukarı doğru sayarken pozitif, aşağı doğru sayarken negatif. Uyumsuzluk sıfır yineleme üretir.
Kendin dene
let start = Int(readLine()!)!
let end = Int(readLine()!)!
let step = Int(readLine()!)!
// TODO: stride(from:through:by:) kullanın, virgülle birleştirin, ardından sayıyı yazdırın
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Stringler Derinlemesine
Sayma ve İndekslerBüyük-Küçük Harf ve KırpmaStringlerde AramaBölme ve BirleştirmeAlt Stringleri DeğiştirmeÖzet - Kullanıcı Adı Kontrolü4Kümeler
Küme OluşturmaBirleşim ve KesişimFark ve Simetrik FarkAlt Küme ve Üst KümeÖzet - Etiket Filtresi7Proje - Alışkanlık Takibi
Projeye Genel BakışTamamlandı Olarak İşaretle10Proje - Quiz Motoru
Projeye Genel BakışSoruları Sorma2Aralıklar ve Adımlar
Kapalı ve Yarı AçıkStride (Adım)Aralık MetotlarıSwitch İçinde AralıklarÖzet - Takvim Izgarası5Yüksek Mertebeden Fonksiyonlar Bölüm 1
MapFilterReduceMap, filter, reduce zincirlemeÖzet - Kelime İstatistikleri