Until Döngüsü
Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası. Ders 45 / 88.
until döngüsü, while döngüsünün tersidir. Bir koşul doğru olduğu sürece çalışmak yerine, bir koşul doğru olana kadar çalışır. Bunu "bu gerçekleşene kadar devam et" olarak düşünebilirsiniz.
count = 1
until count > 3
puts count
count += 1
endBu 1, 2, 3 çıktısını verir. Döngü, count > 3 yanlış olduğu sürece devam eder. count değeri 4 olduğunda koşul doğru olur ve döngü durur.
Bunu eşdeğer while döngüsü ile karşılaştırın:
# Bu iki döngü aynı şeyi yapar:
while count <= 3 # bu TRUE olduğu sürece çalış
until count > 3 # bu TRUE olana kadar çalışuntil döngüsü, bir şeyin gerçekleşmesini beklerken kodunuzu daha okunabilir hale getirebilir. İşte bir geri sayım örneği:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"Bu kod 5'ten 1'e doğru geriye sayar, ardından num değeri 0'a ulaştığında "Liftoff!" yazdırır. Özellikle belirli bir durumun gerçekleşmesini beklerken, amacınızı daha net ifade ediyorsa until tercih edin.
Görev
KolayGirdiden bir n sayısı okuyun. 1'den n'e kadar olan tüm sayıları her biri ayrı bir satırda olacak şekilde yazdırmak için bir until döngüsü kullanın. n değerine ulaştıktan sonra, yeni bir satıra Done! yazdırın.
Döngü, sayaç n değerini aşana kadar devam etmelidir.
Girdi, hedef sayıyı temsil eden tek bir tam sayı olacaktır.
Örneğin, girdi 4 ise, çıktı şu şekilde olmalıdır:
1
2
3
4
Done!Girdi 6 ise, çıktı şu şekilde olmalıdır:
1
2
3
4
5
6
Done!Kendin dene
# Hedef sayıyı oku
n = gets.to_i
# Sayacı başlat
counter = 1
# TODO: Kodunu aşağıya yaz
# 1'den n'e kadar sayıları yazdırmak için bir until döngüsü kullan
# Döngü, counter n'i aşana kadar devam etmelidir
# Döngüden sonra talimatlardaki tam metni yazdır
puts "Done!"Bu 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 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 47Hesap Paylaşımı Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcı Girdisi Alma13İleri Seviye Diziler
Aralıklar ile Dizi Dilimlemeİndeksler ile Dizi DilimlemeDizi OperatörleriInclude? Metodu2Değişkenler ve Veri Tipleri
Sayılar ve DeğişkenlerString Veri TipiBoolean Veri TipiSymbol Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıÖzet - Değişken Oluşturma8Döngüler
Aralıklar ile For DöngüsüWhile DöngüsüBreakNextÖzet - FaktöriyelTimes DöngüsüUntil Döngüsüİç İçe DöngülerÖzet - Dinamik Girdi3Operatörler Bölüm 1
Aritmetik OperatörlerModulo OperatörüAritmetik KısayollarÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel IO
puts ile Çıktı Almaprint ve p ile Çıktı AlmaDeğişkenlerle Çıktı Almagets ile Girdi AlmaChomp MetoduTip DönüşümüÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Metotlar
Metot TanımlamaMetot ParametreleriDönüş DeğerleriÖzet - Sigma MetoduÖzet - Doğrulama MetoduVarsayılan Parametre Değerleri12Koleksiyonlar Üzerinde Yineleme
Each Yineleyicisiİndeks ile EachStringler Üzerinde YinelemeMap ve CollectKendi başına pratik yap: Online Ruby derleyicisi