크기가 100인 배열에 1~100까지의 숫자를 for 문으로 할당하고,
isPrime() 메소드를 만들어 소수를 필터링 해 ture, false를 반환하도록 하였습니다.
public class Example {
public static void main(String... args) {
int[] arr = new int[100];
for (int i = 0; i < 100; i++) {
arr[i] = i + 1;
}
for (int i = 0; i < arr.length; i++) {
if (isPrime(arr[i])) {
System.out.println(arr[i]);
}
}
} // main
public static boolean isPrime(int num) {
if (num <= 1) { // 음수거나 1이면 false 반환
return false;
}
if (num == 2) { // 2면 true
return true;
}
if (num % 2 == 0) { // 2로 나눠서 나머지가 0이면 false
return false;
}
// Math.sqrt(num)으로 num의 제곱근 반환
for (int i = 3; i <= Math.sqrt(num); i += 2) {
if (num % i == 0) {
return false;
}
}
return true;
} // isPrime
}//class
'Java' 카테고리의 다른 글
인터페이스 (0) | 2023.07.25 |
---|---|
Getter Setter (0) | 2023.07.21 |
생성자 (0) | 2023.07.19 |
args (0) | 2023.07.18 |
JAVA 14 Switch Expressions (0) | 2023.07.17 |