Operator Modulo
Termasuk bagian Dasar-Dasar dalam perjalanan Java di Coddy. Pelajaran 16 dari 73.
Operator modulo % memberikan sisa hasil pembagian. Di Java, operator ini digunakan dengan sintaks sederhana:
result = dividend % divisor;- dividend: Bilangan yang dibagi.
- divisor: Bilangan yang membagi dividend.
- result: Sisa pembagian.
Contoh:
result = 10 % 3;Di sini, 10 dibagi 3. 3 masuk ke dalam 10 sebanyak tiga kali, dengan sisa 1. Jadi, result akan bernilai 1.
Bagaimana jika angka yang dibagi lebih kecil daripada pembagi? Dalam hal itu, pembagi masuk 0 kali, jadi sisanya sama dengan angka yang dibagi itu sendiri. Misalnya, 2 % 3 sama dengan 2, karena 3 masuk ke dalam 2 sebanyak nol kali dengan sisa 2.
Biasanya modulo digunakan untuk memeriksa apakah sebuah angka genap atau ganjil:
- Jika sebuah angka genap, membaginya dengan 2 akan menyisakan 0.
- Jika sebuah angka ganjil, membaginya dengan 2 akan menyisakan 1 (atau -1 jika angkanya negatif), jadi
number % 2 != 0memeriksa apakah angka tersebut ganjil.
Saat menggunakan modulo dengan bilangan floating-point (double), cara kerjanya mirip dengan bilangan bulat, tetapi tetap mempertahankan presisi desimal. Contohnya:
double result = 5.5 % 2.0;
// nilai result adalah 1.5Begini cara kerjanya: 2.0 masuk ke dalam 5.5 sebanyak dua kali (4.0), dan sisanya adalah 1.5 (5.5 - 4.0 = 1.5).
Catatan: nilai double disimpan sebagai perkiraan, jadi beberapa sisa pembagian dicetak dengan kesalahan kecil. Misalnya, 5.2 % 2.0 mencetak 1.2000000000000002, bukan 1.2. Itu perilaku floating-point yang normal, bukan kesalahan dalam kodemu.
Contoh lainnya:
double result = 7.5 % 3.5;
// result bernilai 0.5Tantangan
PemulaTulis kode yang menginisialisasi tiga variabel, a (int), b (double) dan c (int) dengan nilai 9, 2.6, dan 11 (secara berurutan).
Setelah itu, inisialisasi variabel berikut:
d (int)yang akan menyimpan hasil moduloadengan2e (int)yang akan menyimpan hasil moduloadengan3f (double)yang akan menyimpan hasil modulobdengan1.5g (double)yang akan menyimpan hasil modulobdengan3.9h (int)yang akan menyimpan hasil modulocdengan10
Periksa hasilnya dan lihat bagaimana pembilang dan pembagi yang berbeda memengaruhi hasilnya.
Coba sendiri
public class Main {
public static void main(String[] args) {
// Ketik kodemu di bawah ini
// Jangan ubah baris di bawah ini
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);
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloIncrement/DecrementPost-increment/Post-decrementPintasan AritmetikaOperator PerbandinganPerbandingan string7IO Dasar
Method System.outMemformat outputClass ScannerRangkuman: Hingga 120Rangkuman: Benar atau Salah5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Rangkuman: Logika SederhanaOperator Logika Bagian 3Operator Logika Bagian 43Variabel Bagian 2
KonstantaKonvensi PenamaanUlasan: Inisialisasi VariabelKonversi Tipe Bagian 1Konversi Tipe Bagian 26Pengambilan Keputusan
Pernyataan IfIf - ElsePernyataan SwitchOperator TernaryRingkasan If - ElseIf - Else BersarangLatihan sendiri: Compiler Java online