Break
Coddy'nin R Journey'sinin Temeller bölümünün bir parçası — ders 40 / 78.
Bazen bir döngüden, tüm yinelemelerini tamamlamadan önce erken çıkmanız gerekir. break ifadesi, belirli bir koşul karşılandığında bir döngüyü anında 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. break anında çıkış yaptığı için 5'in hiçbir zaman yazdırılmadığına dikkat edin.
Bu, özellikle bir şey ararken while döngüleri ile 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ışırdı, ancak break karesi 20'yi aşan ilk sayıyı bulduğumuzda onu durdurur. Bu desen, 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 yineleme yapmak 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, print() kullanarak "Loop ended" 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ü 21, hem 3'e hem de 7'ye bölünebilen ilk sayıdır (21 = 3 × 7).
Kopya kağıdı
break ifadesi, belirli bir koşul karşılandığında bir döngüyü anında durdurur:
for (i in 1:10) {
if (i == 5) {
break
}
print(i)
}Çıktı:
[1] 1
[1] 2
[1] 3
[1] 4i değeri 5'e ulaştığında döngüden çıkılır. break anında çıkış yaptığı için 5 değeri asla yazdırılmaz.
Arama yapmak için while (TRUE) ile break kullanımı:
num <- 1
while (TRUE) {
if (num * num > 20) {
break
}
num <- num + 1
}
print(num)Çıktı:
[1] 5Bu desen, karesi 20'yi aşan ilk sayıyı bulur ve ardından sonsuz döngüyü durdurur.
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 değerine kadar bir for döngüsü kullanın
# Koşulu kontrol etmeden önce her sayıyı yazdırın
# Hem 3 hem de 7 ile bölünebilen bir sayı bulduğunuzda döngüyü kırın
# İpucu: Bölünebilirliği kontrol etmek için %% operatörünü kullanın
# Döngüden sonra "Loop ended" yazdırın
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ğerleri