Menu
Coddy logo textTech

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] 4

Dö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] 5

Burada, 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.

challenge icon

Görev

Kolay

Girdiden 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] 4

i 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] 5

Bu 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")
quiz iconKendini test et

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