-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPrimeRange.java
More file actions
55 lines (47 loc) · 1.61 KB
/
PrimeRange.java
File metadata and controls
55 lines (47 loc) · 1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import java.util.*;
public class PrimeRange {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the starting range:");
int start = sc.nextInt();
System.out.println("Enter the ending range:");
int end = sc.nextInt();
List<Integer> primeNumbers = new ArrayList<>();
List<Integer> nonPrimeNumbers = new ArrayList<>();
for (int i = start; i <= end; i++) {
if (isPrime(i, 2)) {
primeNumbers.add(i);
} else {
nonPrimeNumbers.add(i);
}
}
// Convert lists to arrays
// int[] primeArray = primeNumbers.stream().mapToInt(Integer::intValue).toArray();
//int[] nonPrimeArray = nonPrimeNumbers.stream().mapToInt(Integer::intValue).toArray();
// Print prime numbers
System.out.println("Prime Numbers:");
for (int prime : primeNumbers) {
System.out.print(prime + " ");
}
System.out.println();
// Print non-prime numbers
System.out.println("Non-Prime Numbers:");
for (int nonPrime : nonPrimeNumbers) {
System.out.print(nonPrime + " ");
}
System.out.println();
sc.close();
}
static boolean isPrime(int n, int divisor) {
if (n < 2) {
return false;
}
if (divisor > Math.sqrt(n)) {
return true;
}
if (n % divisor == 0) {
return false;
}
return isPrime(n, divisor + 1);
}
}