Menu
CoddyTech

Modül Operatörü

Coddy'nin Rust Journey'sinin Temeller bölümünün bir parçası. Ders 16 / 75.

Modulo operatörü % bir bölme işleminin kalanını verir. Rust'ta basit bir sözdizimiyle kullanılır:

let result = dividend % divisor;
  • dividend: Bölünen sayı.
  • divisor: Bölüneni bölen sayı.
  • result: Bölme işleminden kalan.

Örneğin:

let result = 10 % 3;

Burada 10, 3'e bölünür. 3, 10'un içinde üç kez bulunur ve 1 kalan verir. Dolayısıyla result 1 olur.

Bölünen bö­lenden küçükse, bölen sıfır kez sığar; bu yüzden kalan, bölünenin kendisidir: 2 % 9 2'dir.

Modulo genellikle bir sayının çift mi tek mi olduğunu kontrol etmek için kullanılır:

  • Bir sayı çiftse, 2'ye bölündüğünde kalan 0 olur.
  • Bir sayı tekse, 2'ye bölündüğünde kalan 1 olur; sayı negatifse kalan -1 olur.

Kayan noktalı sayılarla (f64) modulo kullanıldığında, tamsayılarda olduğu gibi çalışır ve kalan kısmın ondalık bir bölümü olabilir. Örneğin:

let result: f64 = 5.2 % 2.0;
// result yaklaşık 1.2'dir

İşte nasıl çalıştığı: 2.0, 5.2'nin içine iki kez sığar (4.0) ve kalan 1.2'dir (5.2 - 4.0 = 1.2). Bir f64, 5.2'yi tam olarak saklayamaz; bu yüzden result yazdırıldığında 1.2000000000000002 görünür.

Bir başka örnek:

let result: f64 = 7.8 % 3.5;
// result yaklaşık 0.8'dir (0.7999999999999998 yazdırır)
challenge icon

Görev

Başlangıç

9, 2.6 ve 11 değerleriyle sırasıyla a (i32), b (f64) ve c (i32) olmak üzere üç değişken başlatan bir kod yaz.

Bundan sonra aşağıdaki değişkenleri başlat:

  • d (i32), a değerinin 2 ile bölümünden kalanı tutacak 
  • e (i32), a değerinin 3 ile bölümünden kalanı tutacak
  • f (f64), b değerinin 1.5 ile bölümünden kalanı tutacak
  • g (f64), b değerinin 3.9 ile bölümünden kalanı tutacak
  • h (i32), c değerinin 10 ile bölümünden kalanı tutacak

Sonucu incele ve farklı bölünenlerin ve bölenlerin sonucu nasıl etkilediğini gör.

Kendin dene

fn main() {
    // Kodunuzu aşağıya yazın
    
    
    // Aşağıdaki satırı değiştirmeyin
    println!("a = {}", a);
    println!("b = {}", b);
    println!("c = {}", c);
    println!("d = {}", d);
    println!("e = {}", e);
    println!("f = {}", f);
    println!("g = {}", g);
    println!("h = {}", h);
}
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

Kendi başına pratik yap: Online Rust derleyicisi