How to find all pairs in array that equal to a given sum in C

1 Answer

0 votes
#include <stdio.h>
  
void findAllPairs(int arr[], int len, int sum) {
	for (int i = 0; i < len - 1; i++) {
		for (int j = i + 1; j < len; j++) {
			if (arr[i] + arr[j] == sum) {
				printf("arr[%d](%d) + arr[%d](%d)\n", i, arr[i], j, arr[j]);
			}
		}
	}
	printf("Pair not found");
}
 
int main() 
{
   	int arr[] = {3, 2, 1, 6, 5, 4, 8};
	int sum = 10;
 
	int len = sizeof(arr)/sizeof(arr[0]);
 
	findAllPairs(arr, len, sum);
 
    return 0; 
}
   
     
/*
run:
   
arr[1](2) + arr[6](8)
arr[3](6) + arr[5](4)
   
*/

 



answered Feb 13, 2019 by avibootz
edited Apr 16, 2023 by avibootz

Related questions

1 answer 163 views
1 answer 182 views
1 answer 149 views
1 answer 172 views
1 answer 175 views
...