Java의 모듈러스
모듈러스 또는 모듈러스 연산자는 나눗셈 후 두 정수의 나머지를 반환합니다. 숫자가 짝수인지 아닌지 알아내는 것과 같은 간단한 작업과 원형 배열에서 다음 쓰기 위치를 추적하는 것과 같은 더 복잡한 작업에 사용됩니다.
Math.floorMod()
를 사용하여 Java에서 두 숫자의 Mod 계산
Math.floorMod(a,b)
함수는 int 또는 long 유형일 수있는 두 개의 인수를받습니다. 함수에서a
는 피제수이고 b는 제수입니다. 함수에 전달 된 두 인수의 바닥 계수를 반환합니다. a
및b
의 mod는 0보다 크거나 같고 b보다 작은 결과를 산출합니다.
아래에 주어진 코드에서 변수num1
은 정확하게num2
로 나눌 수 있습니다. 따라서 나머지는 0입니다. 두 번째 시나리오의 경우 동일한 부호의num3
및num4
가 있고 동일한 부호의 나머지 만 제공합니다.
그러나 배당금num5
가 양수이고 제수num6
이 음수 인 세 번째 시나리오를 고려하면 나머지는 제수 부호를 갖습니다. 마찬가지로 마지막 배당금에서num7
은 여전히 음수입니다. 결과는 양의 제수 부호 만 전달합니다.
import java.lang.Math;
public class Main {
public static void main(String[] args) {
int num1 = 20, num2 = 4;
System.out.println(Math.floorMod(num1, num2));
int num3 = 113, num4 = 30;
System.out.println(Math.floorMod(num3, num4));
int num5 = 113, num6 = -30;
System.out.println(Math.floorMod(num5, num6));
int num7 = -113, num8 = 30;
System.out.println(Math.floorMod(num7, num8));
}
}
출력:
0
23
-7
7
%
연산자를 사용하여 Java에서 두 숫자의 Mod 계산
나머지%
연산자는 나머지 연산에도 사용됩니다. mod와 나머지 사이에는 미묘한 차이가 있습니다. 위에서 언급했듯이 a와 b의 mod에 대한 결과는 항상 0보다 크거나 같고 b (제수)보다 작습니다.
num1 % num2를 사용하여 아래 주어진 예를 고려하면num1
이 짝수인지 홀수인지 결정합니다. num1 % num2의 나머지가 0과 같으면 숫자는 짝수이고 홀수입니다. % 연산에서 결과는 배당금의 부호를 전달하며num3
%num2
를 취하면 볼 수 있습니다. 방정식-23 % 2
는 -1이므로 배당금의 부호가됩니다.
마찬가지로 배당금이 양수이면 결과 나머지는 양수입니다. 예를 들어num1
%num4
는 나머지가 양수입니다. 방정식17 % -3
은 2와 같습니다.
public class ModTest {
public static void main(String args[]) {
int num1 = 17;
int num2 = 2;
boolean result = false;
if (result = (num1 % num2) == 0) {
System.out.println("Number " + num1 + " is even");
} else {
System.out.println("Number " + num1 + " is odd");
}
int num3 = -23;
int num4 = -3;
System.out.println("Remainder1: " + num3 % num2);
System.out.println("Remainder2: " + num1 % num4);
}
}
출력:
Number 17 is odd
Remainder1: -1
Remainder2: 2
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn