Sonsuz Döngü
Coddy'nin Rust Journey'sinin Fundamentals bölümünün bir parçası — ders 43 / 75.
Rust'ta, sonsuz döngüler loop veya while true kullanılarak oluşturulabilir. Her ikisi de break ile açıkça durdurulana veya program sonlanana kadar çalışır.
Örneğin:
loop {
// Tekrar tekrar çalıştırılacak kod
if condition {
break; // Koşul karşılanırsa döngüden çık
}
}Döngü, bir break ifadesine ulaşana kadar devam eder. Sunucular veya cihazlar gibi sürekli çalışması gereken programlar için kullanışlıdır.
İşte belirli bir koşul karşılanana kadar sayıları yazdıran bir sonsuz döngü örneği:
let mut count = 0;
loop {
println!("Count: {}", count);
count += 1;
if count > 5 {
break;
// Sayı 5'ten büyük olduğunda döngüden çık
}
}Bu örnekte, döngü 0'dan 5'e kadar olan sayıları yazdıracak ve ardından count 6 olduğunda çıkacaktır.
Görev
BaşlangıçBasit bir sayacı simüle eden bir Rust programı yazın. Program, bir sayacı sürekli olarak artırmak ve değerini yazdırmak için sonsuz bir döngü kullanmalıdır. Döngü, sayaç girdiye göre belirlenen belirli bir değere ulaştığında sona ermelidir.
Program için adımlar:
- Değiştirilebilir (mutable) bir
counterdeğişkenini 0 olarak başlatın. - Her yinelemede
counterdeğerini 1 artırmak için sonsuz bir döngü (loop) kullanın. - Döngünün içinde,
counterdeğişkeninin mevcut değerini yazdırın. counterdeğerinin kullanıcı tarafından sağlanan sonlandırma değerine eşit olup olmadığını kontrol edin. Eğer eşitse, döngüden çıkın (break).
Kopya kağıdı
Rust'ta sonsuz döngüler loop veya while true kullanılarak oluşturulabilir. break ile açıkça durdurulana kadar çalışırlar.
Temel sonsuz döngü sözdizimi:
loop {
// Tekrar tekrar çalıştırılacak kod
if condition {
break; // Koşul karşılanırsa döngüden çık
}
}Sayaçlı örnek:
let mut count = 0;
loop {
println!("Count: {}", count);
count += 1;
if count > 5 {
break;
}
}Kendin dene
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let limit: i32 = input.trim().parse().unwrap();
let mut counter = 0;
// Kodunuzu aşağıya yazın
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Fundamentals bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüAritmetik KısayollarKarşılaştırma OperatörleriString Karşılaştırma7Temel Girdi-Çıktı
Konsola YazdırmaKullanıcı Girdisi OkumaÖzet - 120'ye KadarÖzet - Doğru veya Yanlış5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 311Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriBirden Fazla Dönüş DeğeriÖzet - Sigma FonksiyonuÖzet - Doğrulama Fonksiyonu14Diziler Üzerinde Gezinme
Range RehberiGelişmiş For DöngüsüDöngü İçinde Ödünç AlmaYaygın Dizi İşlemleri3Değişkenler Bölüm 2
Tür Bildirimiİsimlendirme KurallarıTür ÇıkarımıÖzet - Değişkenleri BaşlatmaTür Dönüştürme9Döngüler
Seriler Üzerinde ForWhile DöngüsüBreakContinueİç İçe DöngülerDöngü EtiketleriSonsuz DöngüÖzet - Dinamik Girdi