Menu
Coddy logo textTech

Continue İfadesi

Coddy'nin PHP Journey'sinin Temeller bölümünün bir parçası — ders 52 / 71.

break bir döngüyü tamamen terk ederken, bazen sadece mevcut yinelemeyi atlayıp bir sonrakine geçmek istersiniz. Bunu tam olarak yapan continue ifadesidir.

PHP continue ile karşılaştığında, döngünün bir sonraki yinelemesine hemen atlar ve mevcut yinelemedeki kalan kodu atlar.

<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i === 3) {
        continue;
    }
    echo $i . "\n";
}
?>

Bu çıktı verir:

1
2
4
5

3'ün eksik olduğunu fark edin. $i 3'e eşit olduğunda, continue deyimi echo'yu atlar ve $i'nin 4 olduğu bir sonraki yinelemeye doğrudan geçer.

Yaygın bir kullanım senaryosu, bir dizi işlerken istenmeyen değerleri filtrelemektir:

<?php
$numbers = [10, -5, 8, -3, 12];

foreach ($numbers as $num) {
    if ($num < 0) {
        continue;
    }
    echo $num . "\n";
}
?>

Bu, yalnızca pozitif sayıları yazdırır: 10, 8 ve 12. Negatif değerler atlanır, ancak döngü tüm öğeler üzerinden çalışmaya devam eder.

Ana fark: break döngüyü tamamen durdurur, continue ise sadece bir sonraki yinelemeye atlar.

challenge icon

Görev

Kolay

İki satır giriş oku:

  1. Virgülle ayrılmış tam sayı listesi (örneğin, 3,7,12,5,8,20,15)
  2. Bir bölen sayı

Diziyi gezinmek için bir foreach döngüsü kullanın. Verilen bölenle bölünebilen sayıları atlamak için continue kullanın. Diğer tüm sayıları her biri ayrı bir satırda yazdırın.

Örnek 1:

Girişler 1,2,3,4,5,6,7,8,9,10 ve 3 ise, çıktı şu şekilde olmalıdır:

1
2
4
5
7
8
10

(3, 6 ve 9 sayıları 3'e bölünebildikleri için atlanır)

Örnek 2:

Girişler 10,15,20,25,30 ve 5 ise, çıktı şu şekilde olmalıdır:

(Tüm sayılar 5'e bölünebilir, bu yüzden hiçbir şey yazdırılmaz)

Örnek 3:

Girişler 7,14,21,10,5 ve 7 ise, çıktı şu şekilde olmalıdır:

10
5

Kopya kağıdı

continue ifadesi, bir döngünün mevcut yinelemesini atlar ve döngüyü tamamen terk etmeden bir sonrakine geçer.

for döngüsü ile temel örnek:

<?php
for ($i = 1; $i <= 5; $i++) {
    if ($i === 3) {
        continue;
    }
    echo $i . "\n";
}
?>

Bu, 1, 2, 4, 5 çıktısını verir (3'ü atlar).

Dizi değerlerini filtrelemek için foreach ile continue kullanımı:

<?php
$numbers = [10, -5, 8, -3, 12];

foreach ($numbers as $num) {
    if ($num < 0) {
        continue;
    }
    echo $num . "\n";
}
?>

Bu, yalnızca pozitif sayıları (10, 8, 12) yazdırır, negatif değerleri atlar.

Ana fark: break döngüyü tamamen terk ederken, continue yalnızca bir sonraki yinelemeye atlar.

Kendin dene

<?php
// Girişi oku
$input = trim(fgets(STDIN));
$divisor = intval(trim(fgets(STDIN)));

// Virgülle ayrılmış dizeyi tamsayı dizisine dönüştür
$numbers = array_map('intval', explode(',', $input));

// TODO: Kodunuzu aşağıya yazın
// $numbers üzerinde gezinmek için foreach döngüsü kullanın
// $divisor'a bölünebilen sayıları atlamak için continue kullanın
// Diğer tüm sayıları, her biri ayrı bir satırda yazdırın

?>
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