Ebben a részben a Java operátori modul .
Java modul operátor
A matematikában alapvetően négy számtan létezik operátorok összeadás (+), kivonás (-), szorzás (*) , és osztály (/) . A programozásban, e négy operátor kivételével, van egy másik, úgynevezett operátor modult vagy modulus operátor. Ezt a százalékos szimbólum jelöli ( % ).
Meghatározására szolgál a maradék . Két operandust igényel. A bal oldali operandust elosztja a jobb oldali operandusszal, és megadja a maradékot. Például:
a%b
A hozzárendelési operátorral (=) is használhatjuk. Például,
a%=b
Modulust vesz fel két operandus használatával, és az eredményt a bal oldali operandushoz rendeli (a).
Ha egy kifejezésben megjelenik, akkor a kifejezést balról jobbra kell megoldanunk. Vegyük például a következő kifejezést.
11%(2*3) = 11%6 = 5
Ha a szám teljesen fel van osztva, akkor 0-t ad vissza. Például 25%5 0-t ad.
Lássunk néhány további példát a modulo operátorra.
12%2=0
12%5=2
-12%-5=-2
-12%5=3
12%-5=-3
hány 0 egy milliárdban
A Modulo Operator felhasználási területei
- A modulo operátor legáltalánosabb használati esete annak megállapítása, hogy egy adott szám páratlan vagy páratlan.
- A modulo operátor másik felhasználási módja a következő szabad pont indexének követése egy kör alakú tömbben.
Egy programozó számára nagyon fontos tudni, hogyan kell használni a modulo operátort, mert létfontosságú szerepet játszik a logika felépítésében, mint pl. megfordítani egy számot , párosnak találni , palindrom , és még sok más. Használhatjuk egy szám utolsó számjegyének megkeresésére is.
Tegyük fel, hogy a megadott szám 5678 és meg kell találnunk a szám utolsó számjegyét. Mint tudjuk, a modulo operátor határozza meg a maradékot, így a megadott számot elosztjuk 10-zel. Így maradékként és utolsó számjegyként 8-at kapunk.
5678%10 = 8
Használhatjuk a modulo operátort is úszó -pontszámok. Például,
8.9%2.7 = 0.8
Modulo Operator használata Java programokban
A következő Java program a modulo operátor használatát mutatja be Java nyelven.
ModuleOperatorExample1.java
public class ModuloOperatorExample1 { public static void main(String args[]) { int a = 13; int b=2; b = a%b; System.out.println('Remainder: '+b); } }
Kimenet:
Remainder: 1
ModuleOperatorExample2.java
public class ModuloOperatorExample2 { public static void main(String args[]) { double c=8.9, d=2.7, remainder; remainder = c%d; System.out.println('Remainder: '+remainder); } }
Kimenet:
Remainder: 0.7999999999999998
Különbség a Modulo és a Division Operator között
A fő különbség a modulo és a divíziós operátorok között az, hogy a modult (%) operátor megadja a maradék amíg a osztály (/) operátor megadja a hányados .
A következő Java program törli a modulo és osztás operátor fogalmát.
ModuleOperatorExample3.java
lineáris keresés java-ban
public class ModuloOperatorExample3 { public static void main(String args[]) { int a = 13; int b=2; b =a/b; System.out.println('Quotient: '+b); b = a%b; System.out.println('Remainder: '+b); } }
Kimenet:
Quotient: 6 Remainder: 1
Java program a maradék megtalálásához a Modulo Operator használata nélkül
RemainderWithoutModule.java
public class RemainderWithoutModulo { //function finds the remainder without using the modulo operator static int findRemainder(int n, int div) { //calculates remainder and returns the same return (n - div * (n / div)); } //driver code public static void main(String args[]) { //calls the function and prints the result System.out.println('Remainder: '+findRemainder(345456, 25)); } }
Kimenet:
Remainder: 6