# Java Array Tutorials
# Java Array Programs
➤ Find Length of Array
➤ Different ways to Print Array
➤ Sum of Array Elements
➤ Average of Array Elements
➤ Sum of Two Arrays Elements
➤ Compare Two Arrays in Java
➤ 2nd Largest Number in Array
➤ How to Sort an Array in Java
➤ Reverse an Array in Java
➤ GCD of N Numbers in Java
➤ Linear Search in Java
➤ Binary Search in Java
➤ Copy Array in Java
➤ Merge 2 Arrays in Java
➤ Merge two sorted Arrays
➤ Largest Number in Array
➤ Smallest Number in Array
➤ Remove Duplicates
➤ Insert at Specific Position
➤ Add Element to Array
➤ Remove Element From Array
➤ Count Repeated Elements
➤ More Array Programs
Java Matrix Programs
➤ Matrix Tutorial in Java
➤ Print 2D Array in Java
➤ Print a 3×3 Matrix
➤ Sum of Matrix Elements
➤ Sum of Diagonal Elements
➤ Row Sum – Column Sum
➤ Matrix Addition in Java
➤ Matrix Subtraction in Java
➤ Transpose of a Matrix in Java
➤ Matrix Multiplication in Java
➤ Menu-driven Matrix Operations
Java LCM Of Array | In this section, we will find the LCM of the array in the Java programming language. LCM represents Lowest Common Multiple.
Before seeing the LCM of an array, first, let us see how to calculate the LCM of 2 numbers in Java. Also see:- HCF of two numbers in Java
Steps to find LCM of array in Java:-
Step-1:- Take two numbers.
Step2:- List the multiples of two numbers.
Step3:- Find the common least multiple, which is called LCM.
The formula to find the LCM is:- LCM(a,b) = a*b/GCD(a,b)
Where:-
LCM:- Lowest Common Multiple
a, b:- Two numbers needed to find LCM
GCD:- Greatest Common Divisor
Steps to Find GCD(a,b):-
Step1:- Find the divisor of positive integer ‘a’.
Step2:- Find the divisor of positive integer ‘b’.
Step3:- List the common factors of ‘a’ and ‘b’.
Step4:- The highest divisor of ‘a’ and ‘b’ is GCD.
There are two methods to Find LCM,
1) By finding multiple
2) By finding GCD
Program to Find LCM of array in Java by Finding Multiples
import java.util.Arrays;
public class Main {
public static long lcm(int[] elements) {
long lcm = 1;
int divisor = 2;
while (true) {
int counter = 0;
boolean divisible = false;
for (int i = 0; i < elements.length; i++) {
if (elements[i] == 0) {
return 0;
} else if (elements[i] < 0) {
elements[i] = elements[i] * (-1);
}
if (elements[i] == 1) {
counter++;
}
if (elements[i] % divisor == 0) {
divisible = true;
elements[i] = elements[i] / divisor;
}
}
if (divisible) {
lcm = lcm * divisor;
} else {
divisor++;
}
if (counter == elements.length) {
return lcm;
}
}
}
public static void main(String[] args) {
int[] array1 = { 21, 17, 13, 19, 41 };
System.out.println("Array: " + Arrays.toString(array1));
System.out.println("LCM = " + lcm(array1));
int[] array2 = { 9, 18, 27, 36, 54 };
System.out.println("Array: " + Arrays.toString(array2));
System.out.println("LCM = " + lcm(array2));
}
}
Output:-
Array: [21, 17, 13, 19, 41]
LCM = 3615339
Array: [9, 18, 27, 36, 54]
LCM = 108
Java LCM Of Array using Recursion & GCD
import java.util.Arrays;
public class Main {
public static int gcd(int num1, int num2) {
return num2 == 0 ? num1 : gcd(num2, num1 % num2);
}
public static int lcm(int[] array, int index) {
if (index == array.length - 1) {
return array[index];
}
int a = array[index];
int b = lcm(array, index + 1);
return (a * b / gcd(a, b));
}
public static void main(String[] args) {
int[] array1 = { 21, 17, 13, 19, 41 };
System.out.println("Array: " + Arrays.toString(array1));
System.out.println("LCM = " + lcm(array1, 0));
int[] array2 = { 9, 18, 27, 36, 54 };
System.out.println("Array: " + Arrays.toString(array2));
System.out.println("LCM = " + lcm(array2, 0));
}
}
Output:-
Array: [21, 17, 13, 19, 41]
LCM = 3615339
Array: [9, 18, 27, 36, 54]
LCM = 108
In the above program, we have used the recursion technique to find LCM of array in Java. In the main method, we have used the Arrays.toString() method of the Java Arrays class to display the array.
If you enjoyed this post, share it with your friends. Do you want to share more information about the topic discussed above or do you find anything incorrect? Let us know in the comments. Thank you!