w3resource

C++ Exercises: Count the number of occurrences of given number in a sorted array of integers

C++ Array: Exercise-20 with Solution

Write a C++ program to count the number of occurrences of given number in a sorted array of integers.

Pictorial Presentation:

C++ Exercises: Count the number of occurences of given number in a sorted array of integers

Sample Solution:

C++ Code :

#include <iostream>
using namespace std;

int count_occurrences(int arr[], int n, int x)
{
    int result = 0;
    for (int i=0; i<n; i++)
        if (x == arr[i])
          result++;
    return result;
}
 
int main()
{
    int nums[] = {5, 7, 8, 8, 5, 8, 7, 7}; 
    int n = sizeof(nums)/sizeof(nums[0]);
    cout << "Original array: ";
    for (int i=0; i < n; i++) 
    cout << nums[i] <<" ";
    int x = 7;
    cout <<"\nNumber of occurrences of 7 : " << count_occurrences(nums, n, x);
    return 0;
    }

Sample Output:

Original array: 5 7 8 8 5 8 7 7 
Number of occurrences of 7 : 3

Flowchart:

Flowchart: Count the number of occurences of given number in a sorted array of integers

C++ Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a C++ program to find a number which occurs odd number of times of a given array of positive integers. In the said array all numbers occur even number of times.
Next: Write a C++ program to find the two repeating elements in a given array of integers.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Share this Tutorial / Exercise on : Facebook and Twitter

C++ Programming: Tips of the Day

Can I assume (bool)true == (int)1 for any C++ compiler?

According to the standard, you should be safe with that assumption. The C++ bool type has two values - true and false with corresponding values 1 and 0.

The thing to watch about for is mixing bool expressions and variables with BOOL expression and variables. The latter is defined as FALSE = 0 and TRUE != FALSE, which quite often in practice means that any value different from 0 is considered TRUE.

A lot of modern compilers will actually issue a warning for any code that implicitly tries to cast from BOOL to bool if the BOOL value is different than 0 or 1

Ref: https://bit.ly/3PWhs5N