• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to secondary sidebar

GoHired

Interview Questions asked in Google, Microsoft, Amazon

Join WeekEnd Online Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

  • Home
  • Best Java Books
  • Algorithm
  • Internship
  • Certificates
  • About Us
  • Contact Us
  • Privacy Policy
  • Array
  • Stack
  • Queue
  • LinkedList
  • DP
  • Strings
  • Tree
  • Mathametical
  • Puzzles
  • Graph

Printing intermediate Integers between one element & next element of array

February 16, 2018 by Dhaval Dave

Problem : Printing intermediate Integers

User entered numbers are set into array.Intermediate integer of each pair of successive elements to be printed.

Input :
Input of 1st line is number of element in array,inputs of 2nd line are array elements.
Output :
Output of each line is intermediate integers between each two succesive array element.
Example :

Input Output
3
2 6 8 3
3 4 5
7
4 5 6 7
3
8 8 9
"no  intermediate element in between these 8 & 9 elements"
"no  intermediate element in between these 9 & 9 elements"
 Solution : 

Logic for Printing intermediate Integers 

1. Entered numbers kept stored in array                             
2. For loop executes for each pair of successive array elements.
i) If two successive array elements are same or difference between two successive array elements is one ,then no intermediate integer presence message is printed . 
ii) Lesser number is identified in between two numbers of each pair.
iii) printing starts from the number one more than lesser number ,this number incremented by one,again printed,this continues upto the number one less than grater number between pair.

Code : 

#include"iostream";
using namespace std;
main()
{
 int n;
 cout<<"Enter number of Integer in array "<<endl;
 cin>>n;
 int num[n];
 cout<<"Enter elements of array "<<endl;
 for(int p=0;p<n;p++)
 cin>>num[p];
 for(int k=0;k<n-1;k++)
 {
   if((num[k]-num[k+1]==1) || (num[k+1]-num[k]==1) || (num[k]==num[k+1]))
   {
   cout<<"No intermediate element in between these "<<num[k]<<" & "<<num[k+1]<<" elements "<<endl;
   }
   else if(num[k]<num[k+1])
   {
     cout<<"Element between "<<num[k]<<" and "<<num[k+1]<<" is/are ";
     for(int a=num[k];a<num[k+1]-1;)
     {
        cout<<++a<<" ";   //printing intermediate element 
     }
     cout<<endl;
   }
   else if(num[k]>num[k+1])
   {
     cout<<"Element between "<<num[k]<<" and "<<num[k+1]<<" is/are ";
     for(int a=num[k+1];a<num[k]-1;)
       {
         cout<<++a<<" ";   //printing intermediate element
       }
       cout<<endl;
    }
  }
}

Click here to see running code on Ideone with input 4 2 6 8 3

Click here to see running code on Ideone with input 3 8 9 9

Explanation : 

Entered 1st input set’s numbers are stored in array ‘num’ like below –


First (2,6) ,then (6,8),then (8,3) pair get considered.Intermediate values are printed.
Entered 2nd input set’s numbers are stored in array ‘num’ like below –


First (8,9) ,then (9,9) pair get considered.No intermediate element present message is printed.

Another Logic and Code : 

#include"iostream";
using namespace std;
main()
{
int n,a,b,large,small;
cout<<"Enter number of Integer in array "<<endl;
cin>>n;
int num[n];
cout<<"Enter element of array "<<endl;
for(int p=0;p<n;p++)
cin>>num[p];
for(int k=0;k<n-1;k++)
{
 a=num[k];
 b=num[k+1];
 if((num[k]-num[k+1]==1) || (num[k+1]-num[k]==1) || (num[k]==num[k+1]))
 {
 cout<<"No intermediate element present in between these "<<num[k]<<" & "<<num[k+1]<<" elements";
 }
else
{
large=a>b?a:b;   //identifying larger number of pair 
small=a<b?a:b;   //identifying smaller number of pair
cout<<"Element between "<<num[k]<<" and "<<num[k+1]<<" is/are ";
for(int p=small;p<large-1;)
{
 cout<<++p<<" ";   //printing intermediate element
}
}
cout<<endl;
}
}

Click here to see running code on Ideone with input 4 2 6 8 3
Click here to see running code on Ideone with input 3 8 9 9

Explanation : 

If two successive array elements are same or difference between two successive array elements is one ,then no intermediate integer presence message is printed .Larger & smaller number in pair are identified by ternary operator ,then printing starts from the number one more than small ,continues upto the number one less than larger .

Similar Articles

Filed Under: Uncategorized

Reader Interactions

Primary Sidebar

Join WeekEnd Online/Offline Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

Join WeekEnd Online/Offline Batch from 4-April-2020

WhatsApp us

Secondary Sidebar

Custom Search

  • How I cracked AMAZON
  • LeetCode
  • Adobe
  • Amazon
  • Facebook
  • Microsoft
  • Hacker Earth
  • CSE Interview

Top Rated Questions

Find if a binary tree is height balanced ?

Doubly linked list

Get K Max and Delete K Max in stream of incoming integers

HackeEarth Flipkart’s Drone

Number of Islands BFS/DFS

Word Break Problem

Regular Expression Matching

TicTacToe Game As Asked in Flipkart

Coin Collection Dynamic Programming

The greedy coins game Dynamic Programming

Handle duplicates in Binary Search Tree

Templates in C++

Interfaces in C++ (Abstract Classes in C++)

Trapping Rain Water

Subset Sum Problem Dynamic programming

Amazon Interview Experience – SDE Chennai

Facebook Interview Question : Interleave List

Check Binary Tree is Binary Search Tree or not

Microsoft BING Interview Experience

Given array of 0’s and 1’s. All 0’s are coming first followed by 1’s. find the position of first 1

C++ OOPs Part2

Flipkart SDET Interview Experience

Python Dictionaries

Stickler thief

Sort an array according to the order defined by another array

flattens 2 D linked list to a single sorted link list

Check if an array has duplicate numbers in O(n) time and O(1) space

Get Minimum element in O(1) from input numbers or Stack

Print Power Set of a Set

Find min element in Sorted Rotated Array (Without Duplicates)

Copyright © 2026 · Genesis Framework · WordPress · Log in