Break
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası. Ders 40 / 78.
Bazen bir döngünün tüm yinelemelerini tamamlamadan, erken çıkmanız gerekir. break ifadesi, belirli bir koşul karşılandığında bir döngüyü hemen durdurmanıza olanak tanır.
for (i in 1:10) {
if (i == 5) {
break
}
print(i)
}Çıktı:
[1] 1
[1] 2
[1] 3
[1] 4Döngü 1'den 10'a kadar çalışacak şekilde ayarlandı, ancak i 5'e ulaştığında break ifadesi döngüyü tamamen durdurdu. 5'in hiç yazdırılmadığına dikkat edin; çünkü break hemen çıkar.
Bu, özellikle bir şey ararken while döngüleriyle kullanışlıdır:
num <- 1
while (TRUE) {
if (num * num > 20) {
break
}
num <- num + 1
}
print(num)Çıktı:
[1] 5Burada, while (TRUE) normalde sonsuza kadar çalışır, ancak break karesi 20'yi aşan ilk sayıyı bulduğumuzda döngüyü durdurur. Bu kalıp, bir koşul sağlanana kadar arama yapmanız gerektiğinde yaygındır.
Görev
KolayGirdiden bir limit sayısı okuyun. 1’den limit değerine kadar yinelemek için bir for döngüsü kullanın, ancak hem 3’e hem de 7’ye bölünebilen ilk sayıyla karşılaştığınızda break kullanarak döngüyü erkenden durdurun.
Koşulu kontrol etmeden önce her sayıyı yazdırın. Hem 3’e hem de 7’ye bölünebilen bir sayı bulduğunuzda, o sayıyı yazdırın ve ardından döngüden çıkın.
Döngü sona erdikten sonra "Loop ended" ifadesini print() kullanarak yazdırın.
Örneğin, girdi 30 ise çıktı şu şekilde olmalıdır:
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
[1] 11
[1] 12
[1] 13
[1] 14
[1] 15
[1] 16
[1] 17
[1] 18
[1] 19
[1] 20
[1] 21
[1] "Loop ended"Döngü 21’de durur, çünkü bu hem 3’e hem de 7’ye bölünebilen ilk sayıdır (21 = 3 × 7).
Kendin dene
# Girdiyi oku
con <- file("stdin", "r")
limit <- as.integer(suppressWarnings(readLines(con, n = 1)))
# TODO: Kodunuzu aşağıya yazın
# 1'den limit'e kadar bir for döngüsü kullan
# Koşulu kontrol etmeden önce her sayıyı yazdır
# Hem 3 hem de 7'ye bölünebilen bir sayı bulduğunda break yap
# İpucu: Bölünebilirliği kontrol etmek için %% operatörünü kullan
# Döngüden sonra "Loop ended" yazdır
print("Loop ended")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 (AND, OR)Mantıksal Operatörler Bölüm 2 (NOT)Özet - Basit MantıkVektörize Mantık Bölüm 1Vektörize Mantık Bölüm 27Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcıdan Girdi Alma10Farklı Bir FizzBuzz
Oyuna Genel BakışFizzBuzz Fonksiyonu2Değişkenler ve Veri Tipleri
Sayısal Veri TipiTam Sayı Veri TipiKarakter Veri TipiMantıksal Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıEksik Değerler: NAÖzet - Değişken Oluşturma8Döngüler
For DöngüsüWhile DöngüsüBreakNext (Continue)Özet - FaktöriyelDizi Oluşturma (seq, :)İç İçe DöngülerÖzet - Dinamik Girdi3Operatörler 1. Bölüm
Aritmetik OperatörlerTam Sayı Bölmesi ve Mod AlmaAtama OperatörleriÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel Giriş-Çıkış
Print ÇıktısıÇıktı için Cat KullanımıDeğişkenlerle Çıktı Almakreadline() ile Girdi OkumaTip Dönüşümü TemelleriÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Fonksiyonlar
Fonksiyon TanımlamaFonksiyon ArgümanlarıDönüş DeğerleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Parametre DeğerleriKendi başına pratik yap: Online R derleyicisi