2015 Qno2(3)

 Write a C++ function leastDifference that finds the least difference between any two elements of an array. For Example:

Array: 20    24    30    45    32    19

Least Difference: 2 between 30 and 32)


Answer:

#include<iostream>

using namespace std;

//leastDifferenc

int leastDifference(int arr[], int a, int b, int len){


bool val1=false;

bool val2=false;

for(int i=0; i<len; i++){

if(a==arr[i])

val1=true;

if(b==arr[i])

val2=true;

}

if(val1==false || val2==false){

return -999999;

}

int maxVal;

int minVal;

if(a>b)

{ maxVal=a;  minVal=b;}

else

{ maxVal=b; minVal=a;}

int leastDiffer=0;

for(int i=maxVal-1;i>=minVal;i--){

++leastDiffer;

}

return leastDiffer;

}

//MAIN

int main(){

int arr[]={20, 40, 56, 32};

int len = sizeof(arr)/sizeof(int);

cout<<leastDifference(arr, 20,56, len);

}

Comments