
- C++ Basics
- C++ Home
- C++ Overview
- C++ Environment Setup
- C++ Basic Syntax
- C++ Comments
- C++ Data Types
- C++ Variable Types
- C++ Variable Scope
- C++ Constants/Literals
- C++ Modifier Types
- C++ Storage Classes
- C++ Operators
- C++ Loop Types
- C++ Decision Making
- C++ Functions
- C++ Numbers
- C++ Arrays
- C++ Strings
- C++ Pointers
- C++ References
- C++ Date & Time
- C++ Basic Input/Output
- C++ Data Structures
- C++ Object Oriented
- C++ Classes & Objects
- C++ Inheritance
- C++ Overloading
- C++ Polymorphism
- C++ Abstraction
- C++ Encapsulation
- C++ Interfaces
Find the missing number in Arithmetic Progression in C++
Suppose we have an array that represents elements of arithmetic progression in order. One element is missing. We have to find the missing element. So if arr = [2, 4, 8, 10, 12, 14], output is 6, as 6 is missing.
Using binary search, we can solve this problem. We will go to the middle element, then check whether the difference between middle and next to the middle is same as diff or not. If not, then missing element is present between indices mid and mid + 1. If the middle element is the n/2th element in the AP, then missing element lies in the right half, otherwise to the left half.
Example
#include <iostream> using namespace std; class Progression { public: int missingUtil(int arr[], int left, int right, int diff) { if (right <= left) return INT_MAX; int mid = left + (right - left) / 2; if (arr[mid + 1] - arr[mid] != diff) return (arr[mid] + diff); if (mid > 0 && arr[mid] - arr[mid - 1] != diff) return (arr[mid - 1] + diff); if (arr[mid] == arr[0] + mid * diff) return missingUtil(arr, mid + 1, right, diff); return missingUtil(arr, left, mid - 1, diff); } int missingElement(int arr[], int n) { int diff = (arr[n - 1] - arr[0]) / n; return missingUtil(arr, 0, n - 1, diff); } }; int main() { Progression pg; int arr[] = {2, 4, 8, 10, 12, 14}; int n = sizeof(arr) / sizeof(arr[0]); cout << "The missing element is: " << pg.missingElement(arr, n); }
Output
The missing element is: 6
- Related Articles
- Missing Number In Arithmetic Progression using C++
- Finding the missing number in an arithmetic progression sequence in JavaScript
- Find the missing number in Geometric Progression in C++
- What is arithmetic progression?
- C program to find the sum of arithmetic progression series
- Count of AP (Arithmetic Progression) Subsequences in an array in C++
- JavaScript code to find nth term of a series - Arithmetic Progression (AP)
- If eight times the $8^{th}$ term of an arithmetic progression is equal to seventeen times the $7^{th}$ term of the progression, find the $15^{th}$ term of the progression.
- Convert given array to Arithmetic Progression by adding an element in C++
- Program to check we can make arithmetic progression from sequence in Python
- How to find missing number in A.P.?
- Find the one missing number in range using C++
- Find missing number in a sequence in C#
- In an arithmetic progression, if the $k^{th}$ term is $5k+1$, then find the sum of first $100$ terms.
- C Program for N-th term of Arithmetic Progression series

Advertisements