C++ Program to Count Positive, Zero, and Negative Numbers

In this article, you will learn and get code on counting positive, zero, and negative numbers in C++. The program is created in the following ways:

Count positive, negative, and zero in C++

The program given below counts the occurrence (frequency) of positive, zero, and negative numbers from the given set of numbers entered by the user (at run-time) in C++ programming.

The question is: write a program in C++ that counts and prints the frequencies of positive, zero, and negative numbers. The answer to this question is given below:

#include<iostream>
using namespace std;
int main()
{
    intpos=0, neg=0, zer=0, i, arr[10];
    cout<<"Enter 10 Numbers: ";
    for(i=0; i<10; i++)
        cin>>arr[i];
    for(i=0; i<10; i++)
    {
        if(arr[i]>0)
            pos++;
        else if(arr[i]==0)
            zer++;
        else
            neg++;
    }
    cout<<"\nFrequency of Positive Numbers: "<<pos;
    cout<<"\nFrequency of Zero: "<<zer;
    cout<<"\nFrequency of Negative Numbers: "<<neg;
    cout<<endl;
    return 0;
}

This program was built and runs under Code::Blocks. Here is its sample run:

C++ program count positive negative zero

Now supply any 10 numbers, say 1, 0, -3, 4, 5, 0, -8, 9, 6, 0, and press the ENTER key to see the occurrence or frequency of positive, zero, and negative numbers as shown in the output given below:

count positive negative numbers c++

In the above program, when the user enters 10 numbers (for example: 1, 0, -3, 4, 5, 0, -8, 9, 6, 0), then all the 10 numbers get initialized to arr[] in the following way:

Now the dry run of the above program with these 10 values goes like this:

Allow the user to define the size of the array

This program allows the user to define the size of the array. That is, how many numbers he/she wants to enter, and then find and print the occurrence of positive, zero, and negative numbers.

#include<iostream>
using namespace std;
int main()
{
    intpos=0, neg=0, zer=0, i, arr[100], tot;
    cout<<"Enter the Size (max. 100): ";
    cin>>tot;
    cout<<"Enter "<<tot<<" Numbers: ";
    for(i=0; i<tot; i++)
    {
        cin>>arr[i];
        if(arr[i]>0)
            pos++;
        else if(arr[i]==0)
            zer++;
        else
            neg++;
    }
    cout<<"\nFrequency of Positive Numbers: "<<pos;
    cout<<"\nFrequency of Zero: "<<zer;
    cout<<"\nFrequency of Negative Numbers: "<<neg;
    cout<<endl;
    return 0;
}

Below is its sample run with user input, 5 as size, and 1, -2, 3, 0, 4 as 5 numbers:

count positive and negative numbers in array c++

Note: At the time of receiving numbers, the above program counts positive, zero, and negative numbers. That is, the preceding program handles both receiving and counting with a single for loop.

Count positive, negative, and zero in C++ using the while loop

This program uses a while loop to receive the input (a list of numbers) and counts the occurrence of positive, zero, and negative numbers.

#include<iostream>
using namespace std;
int main()
{
    intpos=0, neg=0, zer=0, i=0, arr[100], tot;
    cout<<"Enter the Size (max. 100): ";
    cin>>tot;
    cout<<"Enter "<<tot<<" Numbers: ";
    while(i<tot)
    {
        cin>>arr[i];
        if(arr[i]>0)
            pos++;
        else if(arr[i]==0)
            zer++;
        else
            neg++;
        i++;
    }
    cout<<"\nFrequency of Positive Numbers: "<<pos;
    cout<<"\nFrequency of Zero: "<<zer;
    cout<<"\nFrequency of Negative Numbers: "<<neg;
    cout<<endl;
    return 0;
}

This program produces the same output as the previous program.

The same program in different languages

C++ Quiz


« Previous Program Next Program »