Unless İfadesi
Coddy'nin Ruby Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 25 / 88.
Ruby, bir şey doğru değilse kodu çalıştırmak istediğinde koşulları ifade etmenin benzersiz bir yolunu sunar. unless ifadesi özünde if ifadesinin tersidir.
if ile koşul doğru olduğunda kod çalışır. unless ile koşul yanlış olduğunda kod çalışır:
logged_in = false
unless logged_in
puts "Please log in to continue"
endBu, if !logged_in yazmaya eşdeğerdir, ancak unless çoğu zaman daha doğal okunur. Bunu, “bu koşul doğru olmadığı sürece bunu yap” şeklinde düşünebilirsin.
unless ile birlikte else de kullanabilirsin:
age = 20
unless age < 18
puts "Access granted"
else
puts "Access denied"
endAncak bir else bloğuna ihtiyaç duyduğunda, if kullanmak genellikle daha anlaşılırdır. unless ifadesi, alternatif bir yol içermeyen basit bir olumsuz koşul olduğunda öne çıkar. Kodunu bir bakışta daha kolay okunur hâle getireni seç.
Görev
KolayAşağıdaki değişkenler size verilmiştir:
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = falseAşağıdaki her senaryoyu değerlendirmek için unless ifadelerini kullanın. Belirtilen mesajı yalnızca koşul yanlış olduğunda yazdırın (unless bu durumda bloğunu çalıştırır).
has_ticketdeğeritruedeğilsePlease purchase a ticketyazdırınis_vipdeğeritruedeğilseVIP access requiredyazdırınitems_in_cartdeğeri0'dan büyük değilseYour cart is emptyyazdırınbattery_leveldeğeri20'den büyük değilseLow battery warningyazdırınis_chargingdeğeritruedeğilse veyabattery_leveldeğeri50'den büyük değilsePlease charge your deviceyazdırın
Her mesajı kendi satırına yazdırın. Yalnızca unless bloğunu çalıştıran koşullara ait mesajları yazdırın.
Kendin dene
# Değişkenler sizin için zaten tanımlanmış
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = false
# TODO: Kodunuzu aşağıya yazın
# Her koşulu kontrol etmek ve uygun mesajı yazdırmak için unless ifadelerini kullanınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temel Bilgiler 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