w3resource

C++ Exercises: Check a given array of integers and return true if every 5 that appears in the given array is next to another 5


Check if All '5's Are Next to Each Other

Write a C++ program to check a given array of integers and return true if every 5 that appears in the given array is next to another 5.

Sample Solution:

C++ Code :

#include <iostream>  // Including input-output stream header file

using namespace std;  // Using standard namespace

// Function to check if the number 5 is surrounded by another 5
static bool test(int numbers[], int arr_length)
{
    bool flag = true;  // Flag to indicate if a 5 is surrounded by another 5

    // Loop through the array elements
    for (int i = 0; i < arr_length; i++)
    {
        // Check for occurrences of 5
        if (numbers[i] == 5)
        {
            // Condition to check if 5 is surrounded by another 5
            if ((i > 0 && numbers[i - 1] == 5) || (i < arr_length - 1 && numbers[i + 1] == 5))
                flag = true;  // Set flag to true if 5 is surrounded by another 5
            else if (i == arr_length - 1)
                flag = false;  // Set flag to false if the last element is 5 and it's not surrounded by another 5
            else
                return false;  // Return false if 5 is not surrounded by another 5
        }
    }
    return flag;  // Return the flag indicating if 5 is surrounded by another 5 or not
}

// Main function
int main() 
{  
    // Different test cases with arrays of integers
    int nums1[] = {3, 5, 5, 3, 7};  // 5 is surrounded by another 5
    int arr_length = sizeof(nums1) / sizeof(nums1[0]);
    cout << test(nums1, arr_length) << endl; 

    int nums2[] = {3, 5, 5, 4, 1, 5, 7};  // 5 is not surrounded by another 5
    arr_length = sizeof(nums2) / sizeof(nums2[0]);
    cout << test(nums2, arr_length) << endl;

    int nums3[] = {3, 5, 5, 5, 5, 5};  // 5 is surrounded by another 5
    arr_length = sizeof(nums3) / sizeof(nums3[0]);
    cout << test(nums3, arr_length) << endl;

    int nums4[] = {2, 4, 5, 5, 6, 7, 5};  // 5 is not surrounded by another 5
    arr_length = sizeof(nums4) / sizeof(nums4[0]);
    cout << test(nums4, arr_length) << endl;

    return 0;  // Returning 0 to indicate successful completion of the program
}

Sample Output:

1
0
1
0

Visual Presentation:

C++ Basic Algorithm Exercises: Check a given array of integers and return true if every 5 that appears in the given array is next to another 5.

Flowchart:

Flowchart: Check a given array of integers and return true if every 5 that appears in the given array is next to another 5.

For more Practice: Solve these Related Problems:

  • Write a C++ program to check if every occurrence of 5 in an array is adjacent to another 5, returning true if this condition holds.
  • Write a C++ program that reads an integer array and outputs true if all 5's in the array appear in one contiguous block.
  • Write a C++ program to determine if, in an array of integers, every 5 is immediately next to at least one other 5, then print the boolean result.
  • Write a C++ program to scan an array and verify that 5's, if present, are grouped together, returning true if they are.

Go to:


PREV : Check if Five '5's Exist Without Adjacent Ones.
NEXT : Check if Specified Elements Appear at Both Start and End of Array.

C++ Code Editor:



Contribute your code and comments through Disqus.

What is the difficulty level of this exercise?



Follow us on Facebook and Twitter for latest update.