Menu
Coddy logo textTech

Modulo Operator

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

Modülo operatörü % bir bölmenin kalanını verir. Java'da basit bir sözdizimiyle kullanılır:

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

Örneğin:

result = 10 % 3;

Burada, 10 3'e bölünür. 3, 10'a üç kez sığar, 1 kalır. Yani, result 1 olacaktır.

Bölünen daha küçük ise bölen'den ne olur? O durumda, bölen 0 kez sığar, yani kalan doğrudan bölünen'in kendisidir. Örneğin, 2 % 3 2'ye eşittir, çünkü 3, 2'ye sıfır kez sığar ve 2 kalır.

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

  • Bir sayı çift ise, 2'ye bölündüğünde kalan 0 olur.
  • Bir sayı tek ise, 2'ye bölündüğünde kalan 1 olur.

Modülüs işlecini kayan noktalı sayılar (double'lar) ile kullanırken, tamsayılara benzer şekilde çalışır ancak ondalık hassasiyeti korur. Örneğin:

double result = 5.2 % 2.0;
// result is 1.2

İşte nasıl çalıştığı: 2.0, 5.2'ye iki kez girer (4.0) ve kalan 1.2'dir (5.2 - 4.0 = 1.2).

Başka bir örnek:

double result = 7.8 % 3.5;
// result is 0.8
challenge icon

Görev

Başlangıç

Üç değişkeni, a (int), b (double) ve c (int) olmak üzere 9, 2.6 ve 11 (sırasıyla) değerleriyle başlatan bir kod yazın.

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

  • d (int) a'nın 2'ye kalanını tutacak 
  • e (int) a'nın 3'e kalanını tutacak
  • f (double) b'nin 1.5'e kalanını tutacak
  • g (double) b'nin 3.9'a kalanını tutacak
  • h (int) c'nin 10'a kalanını tutacak

Sonucu inceleyin ve farklı bölünenlerin ile bölenlerin sonuca nasıl etki ettiğini görün.

Kopya kağıdı

Modülo operatörü % bir bölmenin kalanını verir:

result = dividend % divisor;

Tamsayılarla örnek:

result = 10 % 3; // result is 1

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

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

Kayar noktalı sayılarla modülo:

double result = 5.2 % 2.0; // result is 1.2
double result = 7.8 % 3.5; // result is 0.8

Kendin dene

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