loop
- Rust kursu
- Başlangıç
- Ders 38/115
- 4 dk
loop ile sonsuz döngü ve break ile çıkma yöntemini öğrenirsin.
loop
loop açıkça break edilene kadar sonsuza dek döner. break bir değer döndürebilir; continue turun geri kalanını atlar:
let mut n = 0;
let sonuc = loop {
n += 1;
if n % 2 == 0 {
continue;
}
if n > 7 {
break n * 10;
}
};
println!("{sonuc}"); // 90Etiketli döngüler
Etiketler tek tırnakla başlar:
'dis: for i in 1..=3 {
for j in 1..=3 {
if i * j == 4 {
println!("bulundu: {i} x {j}");
break 'dis;
}
}
}Yeniden deneme mantığında loop sık kullanılır: başarılı olunca break, değilse tekrar dene.
Uygulama İlk ortak kat
loop kullanarak 4'e ve 6'ya tam bölünen ilk pozitif sayıyı bul: let mut n = 0; ile başla, her turda n += 1 yap ve koşul sağlanınca break n ile değeri döndür. Sonucu yazdır.
Başlangıç kodu
fn main() {
// buraya yaz
}Örnek çözüm
fn main() {
let mut n = 0;
let sonuc = loop {
n += 1;
if n % 4 == 0 && n % 6 == 0 {
break n;
}
};
println!("{}", sonuc);
}Beklenen çıktı
12
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 İç içe döngülerde dıştaki döngüden çıkmak için ne kullanılır?
- break break;
- return her zaman
- exit()
- Etiketli break: break 'dis; Doğru cevap
Açıklama: Döngüye 'ad: biçiminde etiket verilir ve break 'ad; ile o döngü bitirilir; continue 'ad; da kullanılabilir.
2 Değerle çık
let ilk = loop {
n += 7;
if n % 5 == 0 {
break ____;
}
};
let ilk = loop {
n += 7;
if n % 5 == 0 {
break n;
}
};
Açıklama: break ifadesinden sonra yazılan değer loop ifadesinin değeri olur.
3 Komut ve etkisi
| Kavram | Anlamı |
|---|---|
loop |
Sonsuz döngü |
break x |
Değerle çıkar |
continue |
Sonraki tur |
break 'dis |
Dış döngüden çıkar |