w3resource

C++ Exercises: Find a number which occurs odd number of times of a given array of positive integers

C++ Array: Exercise-19 with Solution

Write a C++ program to find a number that occurs an odd number of times in a given array of positive integers. In the array, all numbers occur an even number of times.

Sample Solution:

C++ Code :

#include <iostream> // Header file for input/output stream
using namespace std; // Using the standard namespace

// Function to find the element occurring an odd number of times in an array
int getOddOccurrence(int nums[], int n)
{
    for (int i = 0; i < n; i++) { // Loop through each element in the array

        int ctr = 0; // Counter to count occurrences of nums[i]

        for (int j = 0; j < n; j++) // Loop to count occurrences of nums[i] in the array
        {
            if (nums[i] == nums[j]) // If the current element matches nums[i]
                ctr++; // Increment the counter
        }
        if (ctr % 2 != 0) // If the counter is odd
            return nums[i]; // Return the element occurring odd times
    }
    return -1; // Return -1 if no element occurs an odd number of times
}

int main()
{
    int nums[] = {5, 7, 8, 8, 5, 8, 7, 7}; // Declaration and initialization of an integer array
    int n = sizeof(nums)/sizeof(nums[0]); // Calculate the number of elements in the array
    cout << "Original array: ";
    for (int i=0; i < n; i++) 
    cout << nums[i] <<" "; // Output each element of the original array
    cout << "\nNumber which occurs odd number of times: " << getOddOccurrence(nums, n); // Call function to find the element occurring odd times
    return 0; // Return 0 to indicate successful execution
}

Sample Output:

Original array: 5 7 8 8 5 8 7 7 
Number which occurs odd number of times: 7

Flowchart:

Flowchart: Find a number which occurs odd number of times of a given array of positive integers

C++ Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a C++ program to move all negative elements of an array of integers to the end of the array without changing the order of positive element and negative element.
Next: Write a C++ program to count the number of occurrences of given number in a sorted array of integers.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/cpp-exercises/array/cpp-array-exercise-19.php