codescracker
c++

C++ Program to Check whether a Number is Divisible by Another Number



« C++ Tutorial C++ Example »

This article provides you some programs in C++ that is used to check whether a number (entered by user) is divisible by another number (also entered by user) or not. These are the programs included:

Check Number is Divisible by Another using if-else

The question is, write a C++ program that receives two numbers as input to check whether the second number divides first without leaving any remainder or not. The answer to this question, is the program given below:

#include<iostream>

using namespace std;
int main()
{
   int numerator, denominator;
   cout<<"Enter a Number (Numerator): ";
   cin>>numerator;
   cout<<"Enter another Number (Denominator): ";
   cin>>denominator;
   if(numerator%denominator==0)
      cout<<endl<<numerator<<" is divisible by "<<denominator;
   else
      cout<<endl<<numerator<<" is not divisible by "<<denominator;
   cout<<endl;
   return 0;
}

The snapshot given below shows the initial output produced by above C++ program on checking whether a number (entered by user) is divisible by another number (also entered by user) or not:

c++ program check number divisible by another

Now enter any two numbers as numerator and denominator to check whether denominator completely divides the numerator (without leaving any remainder, or leaving 0 as remainder) or not. For example, here is its sample run with user input 27 as numerator and 3 as denominator:

check number divisible by another number c++

Note - The % (modulo) operator gives the remainder. For example, 10%3 gives 1, 20%10 gives 0, 20%7 gives 6.

Therefore, if numerator%denominator gives 0, means that, denominator divides numerator without leaving remainder.

Using User-defined Function

This is the same program as of previous one. That is, this program does the same job of checking whether the first number divides the second number or not. Both the number must be entered by user at run-time of the program:

#include<iostream>

using namespace std;

int check_div(int, int);
int main()
{
   int numerator, denominator, res;
   cout<<"Enter a Number (Numerator): ";
   cin>>numerator;
   cout<<"Enter another Number (Denominator): ";
   cin>>denominator;

   res = check_div(numerator, denominator);
   if(res==1)
      cout<<endl<<numerator<<" is divisible by "<<denominator;
   else
      cout<<endl<<numerator<<" is not divisible by "<<denominator;
   cout<<endl;
   return 0;
}
int check_div(int a, int b)
{
   if(a%b==0)
      return 1;
   else
      return 0;
}

Here is its sample run with user input 14 as numerator and 4 as denominator:

c++ check whether a number divisible by number

In above program, the function check_div() returns 1, if a%b or numerator%denominator gives 0. Otherwise, it returns 0. Based on the return value, the print statement gets performed as shown in the above program.

Using Class

This is another program, also does the same job as of previous two programs, but using different approach. That is, this program uses class and object, an object-oriented feature of C++.

#include<iostream>

using namespace std;

class CodesCracker
{
   public:
      int check_div(int, int);
};
int CodesCracker::check_div(int a, int b)
{
   if(a%b==0)
      return 1;
   else
      return 0;
}
int main()
{
   CodesCracker ob;
   int numerator, denominator, res;
   cout<<"Enter a Number (Numerator): ";
   cin>>numerator;
   cout<<"Enter another Number (Denominator): ";
   cin>>denominator;

   res = ob.check_div(numerator, denominator);
   if(res==1)
      cout<<endl<<numerator<<" is divisible by "<<denominator;
   else
      cout<<endl<<numerator<<" is not divisible by "<<denominator;
   cout<<endl;
   return 0;
}

This program produces same output as of previous program.

Divisibility Test with Multiple Numbers in a Range

The question is, write a program in C++ that find and prints all the numbers in a given range (entered by user) are divisible by a number (entered by user). The program given below is the answer to this question:

#include<iostream>

using namespace std;
int main()
{
   int tot, i, arr[100], num, j, arr_div[100];
   cout<<"Enter the Size: ";
   cin>>tot;
   cout<<"Enter "<<tot<<" Numbers: ";
   for(i=0; i<tot; i++)
      cin>>arr[i];
   cout<<"Enter a Number to Apply Divisibility Test: ";
   cin>>num;
   for(i=0, j=0; i<tot; i++)
   {
      if(arr[i]%num==0)
      {
         arr_div[j] = arr[i];
         j++;
      }
   }
   if(j==0)
      cout<<"\nAll the numbers are not divisible by "<<num;
   else
   {
      cout<<"\nThese are the numbers divisible by "<<num<<endl;
      for(i=0; i<j; i++)
         cout<<arr_div[i]<<" ";

   }
   cout<<endl;
   return 0;
}

Here is its sample run with user input, 10 as size, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 as 10 numbers, 2 as number to apply divisibility test with all these given 10 numbers like shown in the snapshot given below:

c++ program for divisibility test

C++ Online Test


« C++ Tutorial C++ Example »



© Copyright 2021. All Rights Reserved.

CodesCracker