모듈러 연산관련해서 짜보는데 mod(7, 6)은 5로는 값으로 잘 실행되는데
mod안의 숫자가 커지면 0이 나와버립니다.
큰 수를 처리하려면 자료형을 바꿔야 하는 건가요?
public static void main(String[] args) {
System.out.println("mod확인용: "+mod(353, 352));
}
public static int mod(int number, int number2) {
int result = 0;
int num = 0;
int tmp = 0;
for(int i=2; i<number; i++) {
int count = 0;
for(int j=0; j<number; j++) {
num = (int) (Math.pow(i, j+1) % number);
count++;
if(num == 1 && count == number2) {
if(i > tmp) {
tmp = i;
}
break;
}
if(num == 1 && count != number2) {
break;
}
}
}
return tmp;
}이 텍스트는 숨겨집니다.