Thursday, 19 October 2017

Find out missing number from a series ?

package com.test.yuvagen.basic;

/**
 * Find Out 
Missing Number from series
 *
 * @author:http://javainterviewprograms.blogspot.in/
 *
 */
//Find out the missing number from a series
public class FindMissingNumber {
          /*
           *  For a Arithmetic Series (1, 2 3 ....n) | a(n)=a(1)+d*(n-1) ,where d is
           * difference in terms // sum=(n/2)*(a(1)+a(n))
           */
         
          // Method to determine missing number
          void findNumber(int[] series) {
                   // Assuming only one Number is missing
                   int lengthOfSeries = series.length + 1;

                   int sumOfSeries = 0;
                   int totalSum = 0;
                   sumOfSeries = ((lengthOfSeries) * (series[0] + series[series.length - 1])) / 2;

                   System.out.println("sumOfSeries :" + sumOfSeries);
                   for (int i = 0; i < series.length; i++) {

                             totalSum = totalSum + series[i];
                   }
                   System.out.println("totalSum :" + totalSum);
                   int missingNumber = sumOfSeries - totalSum;
                   System.out.println("Missing Number :" + missingNumber);
          }

          public static void main(String args[]) {
                   // int series[] = { 1, 2, 3, 4, 5, 6, 8, 9, 10, 11 };
                   int series[] = { -3, 0, 3, 6, 9, 12, 18, 21, 24 };
                   FindMissingNumber FMN = new FindMissingNumber();
                   FMN.findNumber(series);

          }
}

Output :
sumOfSeries :105
totalSum :90

Missing Number :15

No comments:

Post a Comment

Difference between final, finally and finalize()?

final :Final is a keyword. Final is used to apply restrictions on class, method and variable. Final class can't be inherited, final ...