Introduction:
Prime factorization is the process of determining the prime numbers that multiply together to form a given number. A prime number is a number greater than 1 that has no positive divisors other than 1 and itself. For example, the prime factorization of 18 is 2 × 3 × 3.
Objective:
The objective of this program is to find the prime factors of a given number using Java programming language. The program will take an integer input from the user, and output its prime factors.
Java Program to Find Prime Factors of a Number
import java.util.Scanner;
public class PrimeFactorization {
// Method to print prime factors of a number
public static void primeFactors(int n) {
// Divide out the number 2 until it's no longer divisible
while (n % 2 == 0) {
System.out.print(2 + " ");
n /= 2;
}
// Check for odd factors from 3 upwards
for (int i = 3; i <= Math.sqrt(n); i += 2) { // Divide the number by i until it's no longer divisible while (n % i == 0) { System.out.print(i + " "); n /= i; } } // If the number is a prime number greater than 2 if (n > 2) {
System.out.print(n);
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Prompt the user to enter a number
System.out.print("Enter a number to find its prime factors: ");
int number = scanner.nextInt();
System.out.println("Prime factors of " + number + " are:");
primeFactors(number);
scanner.close();
}
}
Explanation of the Program
This Java program consists of two main components:
- primeFactors(int n): This method is used to find and print the prime factors of the given number
n
. - main(String[] args): This is the main method of the program where we accept user input and call the
primeFactors
method to display the results.
Program Flow:
- The program first takes an integer input from the user.
- The
primeFactors
method is called with the user-provided number. - Inside the
primeFactors
method, the number is repeatedly divided by 2 until it’s no longer divisible by 2 (removing all factors of 2). - Then, it checks for all odd numbers starting from 3 up to the square root of the number and divides out the factors until the number is reduced.
- Finally, if the remaining number is greater than 2, it is printed as a prime factor.
How to Run the Program:
To run this program, follow these steps:
-
- Step 1: Copy the Java code provided above into a text file and save it as
PrimeFactorization.java
. - Step 2: Open your command prompt or terminal and navigate to the directory where your Java file is saved.
- Step 3: Compile the Java program by typing the following command:
- Step 1: Copy the Java code provided above into a text file and save it as
javac PrimeFactorization.java
-
- Step 4: Once compiled, run the program by typing the following command:
java PrimeFactorization
- Step 5: Enter an integer when prompted to see the prime factors of the number.
Example Run:
Enter a number to find its prime factors: 60 Prime factors of 60 are: 2 2 3 5
This program efficiently finds and displays the prime factors of any number provided as input. It makes use of simple mathematical principles of division and checking divisibility.