Menu
Coddy logo textTech

Mod Alma Operatörü

Coddy'nin C# Journey'sinin Temeller bölümünün bir parçası — ders 16 / 69.

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

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

Örneğin:

result = 10 % 3;

Burada, 10 sayısı 3'e bölünür. 3, 10'un içinde üç kez vardır ve kalan 1'dir. Bu nedenle, result 1 olacaktır.

Genellikle mod alma işlemi, bir sayının çift mi yoksa tek mi olduğunu kontrol etmek için kullanılır:

  • Eğer bir sayı çiftse, 2'ye bölündüğünde 0 kalanını verecektir.
  • Eğer bir sayı tekse, 2'ye bölündüğünde 1 kalanını verecektir.

Kayan noktalı sayılarla (double) modül operatörü kullanıldığında, tam sayılara benzer şekilde çalışır ancak ondalık hassasiyeti korur. Örneğin:

double result = 5.2 % 2.0;
// result 1.2'dir

İşte şu şekilde çalışır: 2.0, 5.2'nin içinde iki kez vardır (4.0) ve kalan 1.2'dir (5.2 - 4.0 = 1.2).

Başka bir örnek:

double result = 7.8 % 3.5;
// sonuç 0.8
challenge icon

Görev

Başlangıç

Sırasıyla 9, 2.6 ve 11 değerlerine sahip a (int), b (double) ve c (int) adında üç değişkeni başlatan bir kod yazın.

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

  • a modulo 2 sonucunu tutacak olan d (int) 
  • a modulo 3 sonucunu tutacak olan e (int)
  • b modulo 1.5 sonucunu tutacak olan f (double)
  • b modulo 3.9 sonucunu tutacak olan g (double)
  • c modulo 10 sonucunu tutacak olan h (int)

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

Kopya kağıdı

Modulo operatörü % bir bölme işleminin kalanını döndürür:

result = dividend % divisor;

Tam sayılarla örnek:

result = 10 % 3; // sonuç 1'dir

Yaygın kullanım durumu - bir sayının çift mi yoksa tek mi olduğunu kontrol etme:

  • Çift sayılar: number % 2 == 0
  • Tek sayılar: number % 2 == 1

Modulo, kayan noktalı sayılarla da çalışır:

double result = 5.2 % 2.0; // sonuç 1.2'dir
double result2 = 7.8 % 3.5; // sonuç2 0.8'dir

Kendin dene

using System;

public class Program {
    public static void Main(string[] args) {
        // Kodunuzu aşağıya yazın
        
        
        // Aşağıdaki satırı değiştirmeyin
        Console.WriteLine("a = " + a);
        Console.WriteLine("b = " + b);
        Console.WriteLine("c = " + c);
        Console.WriteLine("d = " + d);
        Console.WriteLine("e = " + e);
        Console.WriteLine("f = " + f);
        Console.WriteLine("g = " + g);
        Console.WriteLine("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