What is the functionality and restrictions of Modulus Operator?
When a division is performed, the remainder of the operation is given by modulus operator. The modulus operator is denoted in c by symbol %.
For instance we have two integer values x and y, the operation x % y called as x modulus y gives the result as (x- (x / y) * y).
If x=18 and y =5 the x % y gives value as (18- (18 / 5) * 5) which gives (18-15) which results in 3 in other words the remainder of the division operation.
There is a restriction in C language while using the modulus operator. it can operator only on integers and cannot operate on floats or double. If anyone tries to use the modulus operator on floats then the compiler would display error message as ‘Illegal use of Floating Point’.
Let us see this with an example:
z = x % y;
printf( %d”, z)’;
This above program would give error as ‘Illegal use of Floating Point’.
This is because modulus operator is made to operate on float values namely x and y which is not possible.