This program is about finding the missing number from an array of length N-1 containing elements from 1 to N in Java. The trick to find the missing number is using the mathematical formula of Sum of Series to find the sum of N numbers and then subtract it from the sum of all the numbers of any given array.
Program Description
Assume, you have a number N(e.g. 9) and an array containing numbers from 1 to N-1 (e.g 1 - 8), meaning there is any random number missing in tha array between 1 to 9. Now, you need to write a Java program to find that missing number from the array.
Below is the sample program:
package com.devglan;
import java.util.Arrays;
public class FindMissingNumber {
public static int calculateSumOfNNumbers(int n){
return (n * (n + 1))/2;
}
public static int calculateSum(int [] array){
return Arrays.stream(array).sum();
}
public static void main(String [] args){
int n = 9;
int[] numbers = {1, 2, 4, 9, 7, 8, 5, 6};
int nNumberSum = FindMissingNumber.calculateSumOfNNumbers(n);
int sumOfArray = calculateSum(numbers);
int missingNumber = nNumberSum - sumOfArray;
System.out.println(String.format("The missing number is: %s", missingNumber));
}
}