CodePlexProject Hosting for Open Source Software

Take a simple arithmetic problem: what's left over when you divide 11 by 3? The answer is easy to compute: divide 11 by 3 and take the remainder: 2. But how would you compute this in a programming language like C or C++? It's not hard to come up
with a formula, but the language provides a built-in mechanism, the **modulus operator** ('**%**'), that computes the remainder that results from performing integer division.

The modulus operator is useful in a variety of circumstances. It is commonly used to take a randomly generated number and reduce that number to a random number on a smaller range, and it can also quickly tell you if one number is a factor of another.

If you wanted to know if a number was odd or even, you could use modulus to quickly tell you by asking for the remainder of the number when divided by 2.

#include <iostream> using namespace std; int main() { int num; cin >> num; // num % 2 computes the remainder when num is divided by 2 if ( num % 2 == 0 ) { cout << num << " is even "; } return 0; }

The key line is the one that performs the modulus operation: "num % 2 == 0". A number is even if and only if it is divisible by two, and a number is divisible by another only if there is no remainder.

**"Tutorial from http://www.cprogramming.com by Alexander Allain. Cprogramming.com serves programming audiences with tutorials and articles on programming, along with free source
code and an active message board." **

Last edited Sep 21, 2015 at 6:17 PM by vineetchoudhary, version 2