# Find the sum of the first half and second half elements of an array

Given an array arr of size N. The task is to find the sum of the first half (N/2) elements and second half elements (N – N/2) of an array.

Examples:

Input : arr[] = {20, 30, 60, 10, 25, 15, 40}
Output : 110, 90
Sum of first N/2 elemets 20 + 30 + 60 is 110

Input : arr[] = {50, 35, 20, 15}
Output : 85, 35

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:
Initialize SumFirst and SumSecond as 0. Traverse the given array and add elements in SumFirst if the current index is less than N/2 otherwise add in SumSecond.

Below is the implementation of the above approach:

 `// C++ program to find the sum of the first half ` `// elements and second half elements of an array ` `#include ` `using` `namespace` `std; ` ` `  `// Function to find the sum of the first half ` `// elements and second half elements of an array ` `void` `sum_of_elements(``int` `arr[], ``int` `n) ` `{ ` `    ``int` `sumfirst = 0, sumsecond = 0; ` ` `  `    ``for` `(``int` `i = 0; i < n; i++) { ` `        ``// Add elements in first half sum ` `        ``if` `(i < n / 2) ` `            ``sumfirst += arr[i]; ` ` `  `        ``// Add elements in the second half sum ` `        ``else` `            ``sumsecond += arr[i]; ` `    ``} ` ` `  `    ``cout << ``"Sum of first half elements is "` `<<  ` `                                   ``sumfirst << endl; ` ` `  `    ``cout << ``"Sum of second half elements is "` `<<  ` `                                   ``sumsecond << endl; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `arr[] = { 20, 30, 60, 10, 25, 15, 40 }; ` ` `  `    ``int` `n = ``sizeof``(arr) / ``sizeof``(arr); ` ` `  `    ``// Function call ` `    ``sum_of_elements(arr, n); ` ` `  `    ``return` `0; ` `} `

 `// Java program to count pairs  ` `// whose sum divisible by 'K'  ` `import` `java.util.*; ` ` `  `class` `GFG  ` `{ ` ` `  `public` `static` `void` `sum_of_elements(``int` `[]arr,  ` `                                   ``int` `n) ` `{  ` `    ``int` `sumfirst = ``0``, sumsecond = ``0``; ` `     `  `    ``for` `(``int` `i = ``0``; i < n; i++) ` `    ``{ ` `         `  `        ``// Add elements in first half sum ` `        ``if` `(i < n / ``2``) ` `        ``{ ` `            ``sumfirst += arr[i]; ` `        ``} ` `         `  `        ``// Add elements in the second half sum ` `        ``else` `        ``{ ` `            ``sumsecond += arr[i]; ` `        ``} ` `    ``} ` `     `  `    ``System.out.println(``"Sum of first half elements is "` `+  ` `                                             ``sumfirst); ` `     `  `    ``System.out.println(``"Sum of second half elements is "` `+ ` `                                            ``sumsecond); ` `} ` ` `  `// Driver code  ` `public` `static` `void` `main(String[] args)  ` `{ ` `    ``int` `[]arr = { ``20``, ``30``, ``60``, ``10``, ``25``, ``15``, ``40` `}; ` `    ``int` `n = arr.length; ` `     `  `    ``// Function call ` `    ``sum_of_elements(arr, n);  ` `} ` `} ` ` `  `// This code is contributed by Princi Singh `

 `# Python3 program to find the sum of  ` `# the first half elements and  ` `# second half elements of an array ` ` `  `# Function to find the sum of   ` `# the first half elements and  ` `# second half elements of an array ` `def` `sum_of_elements(arr, n): ` ` `  `    ``sumfirst ``=` `0``; ` `    ``sumsecond ``=` `0``; ` ` `  `    ``for` `i ``in` `range``(n): ` `         `  `        ``# Add elements in first half sum ` `        ``if` `(i < n ``/``/` `2``): ` `            ``sumfirst ``+``=` `arr[i]; ` ` `  `        ``# Add elements in the second half sum ` `        ``else``: ` `            ``sumsecond ``+``=` `arr[i]; ` `             `  `    ``print``(``"Sum of first half elements is"``,  ` `                    ``sumfirst, end ``=` `"\n"``); ` `    ``print``(``"Sum of second half elements is"``,  ` `                    ``sumsecond, end ``=` `"\n"``); ` ` `  `# Driver Code ` `arr ``=` `[``20``, ``30``, ``60``, ``10``, ``25``, ``15``, ``40``]; ` ` `  `n ``=` `len``(arr); ` ` `  `# Function call ` `sum_of_elements(arr, n); ` ` `  `# This code is contributed ` `# by Akanksha Rai `

 `// C# program to count pairs  ` `// whose sum divisible by 'K'  ` `using` `System;  ` ` `  `class` `GFG ` `{  ` `    ``public` `static` `void` `sum_of_elements(``int` `[]arr,  ` `                                       ``int` `n) ` `    ``{  ` `         `  `    ``int` `sumfirst = 0, sumsecond = 0; ` ` `  `    ``for` `(``int` `i = 0; i < n; i++) ` `    ``{ ` `         `  `        ``// Add elements in first half sum ` `        ``if` `(i < n / 2) ` `        ``{ ` `            ``sumfirst += arr[i]; ` `        ``} ` `         `  `        ``// Add elements in the second half sum ` `        ``else` `        ``{ ` `            ``sumsecond += arr[i]; ` `        ``} ` `    ``} ` ` `  `    ``Console.WriteLine(``"Sum of first half elements is "` `+  ` `                                              ``sumfirst); ` `     `  `    ``Console.WriteLine(``"Sum of second half elements is "` `+ ` `                                              ``sumsecond); ` `} ` ` `  `// Driver code  ` `static` `public` `void` `Main ()  ` `{  ` `    ``int` `[]arr = { 20, 30, 60, 10, 25, 15, 40 }; ` `    ``int` `n = arr.Length; ` `     `  `    ``// Function call ` `    ``sum_of_elements(arr, n);  ` `}  ` `}  ` ` `  `// This code is contributed by nidhiva `

Output:
```Sum of first half elements is 110
Sum of second half elements is 90
```

Time complexity: O(N)

GeeksforGeeks has prepared a complete interview preparation course with premium videos, theory, practice problems, TA support and many more features. Please refer Placement 100 for details

## Recommended Posts:

Article Tags :
Practice Tags :