Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Scanner;
- public class Laba2_2 {
- public static void main(String[] args) {
- System.out.println(findPrimeNums());
- }
- private static int enterCheckedP() {
- Scanner sc = new Scanner(System.in);
- boolean isNotCorrect;
- int value = 0;
- System.out.println("Hello dear user! You have launched a program that finds all the numbers that can be" +
- " represented as the product of two prime numbers until you enter the number P. Please, enter an " +
- "integer greater than one and less than 2,147,483,647:");
- do {
- try {
- isNotCorrect = false;
- value = Integer.parseInt(sc.next());
- if (value < 2) {
- isNotCorrect = true;
- System.out.println("Be careful, the number must be more than one! Try again:");
- }
- } catch (Exception e) {
- isNotCorrect = true;
- System.out.println("Be careful, the number must be an integer and less than 2 147 483 647! Try again^");
- }
- } while (isNotCorrect);
- return value;
- }
- private static ArrayList<Integer> findPrimeNums() {
- int tempP = enterCheckedP();
- boolean isPrime = true;
- ArrayList<Integer> primeNums = new ArrayList<>();
- ArrayList<Integer> processedNums = new ArrayList<>();
- primeNums.add(2);
- for (int i = 3; i <= tempP; i = i + 2) {
- for (int j = 2; j < i; j++) {
- if (i % j == 0) {
- isPrime = false;
- }
- }
- if (isPrime) {
- primeNums.add(i);
- }
- }
- for (int primeNum1: primeNums) {
- for (int primeNum: primeNums) {
- if (primeNum1 * primeNum <= tempP) {
- processedNums.add(primeNum1 * primeNum);
- }
- }
- }
- return processedNums;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement