# Check if a number is multiple of 5 without using / and % operators

Given a positive number n, write a function isMultipleof5(int n) that returns true if n is multiple of 5, otherwise false. You are not allowed to use % and / operators.

Method 1 (Repeatedly subtract 5 from n)
Run a loop and subtract 5 from n in the loop while n is greater than 0. After the loop terminates, check whether n is 0. If n becomes 0 then n is multiple of 5, otherwise not.

## C++

 `#include ` `using` `namespace` `std; ` ` `  `// assumes that n is a positive integer  ` `bool` `isMultipleof5 (``int` `n)  ` `{  ` `    ``while` `( n > 0 )  ` `        ``n = n - 5;  ` ` `  `    ``if` `( n == 0 )  ` `        ``return` `true``;  ` ` `  `    ``return` `false``;  ` `}  ` ` `  `// Driver Code  ` `int` `main()  ` `{  ` `    ``int` `n = 19;  ` `    ``if` `( isMultipleof5(n) == ``true` `)  ` `        ``cout << n <<``" is multiple of 5"``;  ` `    ``else` `        ``cout << n << ``" is not a multiple of 5"``;  ` ` `  `    ``return` `0;  ` `}  ` ` `  `// This code is contributed by SHUBHAMSINGH10 `

## C

 `#include ` ` `  `// assumes that n is a positive integer  ` `bool` `isMultipleof5 (``int` `n) ` `{ ` `    ``while` `( n > 0 ) ` `        ``n = n - 5; ` ` `  `    ``if` `( n == 0 ) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `n = 19; ` `    ``if` `( isMultipleof5(n) == ``true` `) ` `        ``printf``(``"%d is multiple of 5\n"``, n); ` `    ``else` `        ``printf``(``"%d is not a multiple of 5\n"``, n); ` ` `  `    ``return` `0; ` `} `

## Java

 `// Java code to check if a number ` `// is multiple of 5 without using  ` `// '/' and '%' operators ` `class` `GFG  ` `{ ` `     `  `// assumes that n is a positive integer  ` `static` `boolean` `isMultipleof5 (``int` `n) ` `{ ` `    ``while` `(n > ``0``) ` `        ``n = n - ``5``; ` ` `  `    ``if` `(n == ``0``) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `public` `static` `void` `main(String[] args) ` `{ ` `    ``int` `n = ``19``; ` `    ``if` `(isMultipleof5(n) == ``true``) ` `        ``System.out.printf(``"%d is multiple of 5\n"``, n); ` `    ``else` `        ``System.out.printf(``"%d is not a multiple of 5\n"``, n); ` `} ` `} ` ` `  `// This code is contributed by Smitha DInesh Semwal `

## Python3

 `# Python code to check ` `# if a number is multiple of ` `# 5 without using / and % ` ` `  `# Assumes that n is a positive integer  ` `def` `isMultipleof5(n): ` `     `  `    ``while` `( n > ``0` `): ` `        ``n ``=` `n ``-` `5` ` `  `    ``if` `( n ``=``=` `0` `): ` `        ``return` `1` ` `  `    ``return` `0` `     `  `# Driver Code ` `i ``=` `19` `if` `( isMultipleof5(i) ``=``=` `1` `): ` `    ``print` `(i, ``"is multiple of 5"``) ` `else``: ` `    ``print` `(i, ``"is not a multiple of 5"``) ` ` `  `# This code is contributed ` `# by Sumit Sudhakar `

## C#

 `// C# code to check if a number ` `// is multiple of 5 without using / ` `// and % operators ` `using` `System; ` ` `  `class` `GFG  ` `{ ` `     `  `// assumes that n is a positive integer ` `static` `bool` `isMultipleof5 (``int` `n) ` `{ ` `    ``while` `(n > 0) ` `        ``n = n - 5; ` ` `  `    ``if` `(n == 0) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `public` `static` `void` `Main() ` `{ ` `    ``int` `n = 19; ` `    ``if` `(isMultipleof5(n) == ``true``) ` `        ``Console.Write(n + ``" is multiple of 5\n"``); ` `    ``else` `        ``Console.Write(n + ``" is not a multiple of 5\n"``); ` `} ` `} ` ` `  `// This code is contributed by nitin mittal. `

## PHP

 ` 0 ) ` `        ``\$n` `= ``\$n` `- 5; ` ` `  `    ``if` `( ``\$n` `== 0 ) ` `        ``return` `true; ` ` `  `    ``return` `false; ` `} ` ` `  `// Driver Code ` `    ``\$n` `= 19; ` `    ``if` `( isMultipleof5(``\$n``) == true ) ` `        ``echo``(``"\$n is multiple of 5"``); ` `    ``else` `        ``echo``(``"\$n is not a multiple of 5"` `); ` `         `  `// This code is contributed by nitin mittal. ` `?> `

Output :

```19 is not a multiple of 5

```

Method 2 (Convert to string and check the last character)
Convert n to a string and check the last character of the string. If the last character is ‘5’ or ‘0’ then n is multiple of 5, otherwise not.

## C++

 `#include ` `using` `namespace` `std; ` ` `  `// Assuming that integre takes 4 bytes, there  ` `// can be maximum 10 digits in a integer ` `# define MAX 11 ` ` `  `bool` `isMultipleof5(``int` `n) ` `{ ` `    ``char` `str[MAX]; ` `    ``int` `len = ``strlen``(str); ` `     `  `    ``// Check the last character of string ` `    ``if` `( str[len - 1] == ``'5'` `||  ` `        ``str[len - 1] == ``'0'` `) ` `         `  `        ``return` `true``; ` `     `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `n = 19; ` `    ``if` `( isMultipleof5(n) == ``true` `) ` `        ``cout << n <<``" is multiple of 5"` `<

## C

 `#include ` `#include ` `#include ` ` `  `// Assuming that integre takes 4 bytes, there  ` `// can be maximum 10 digits in a integer ` `# define MAX 11 ` ` `  `bool` `isMultipleof5(``int` `n) ` `{ ` `    ``char` `str[MAX]; ` `    ``int` `len = ``strlen``(str); ` `     `  `    ``// Check the last character of string ` `    ``if` `( str[len - 1] == ``'5'` `||  ` `         ``str[len - 1] == ``'0'` `) ` `          `  `        ``return` `true``; ` `     `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `n = 19; ` `    ``if` `( isMultipleof5(n) == ``true` `) ` `        ``printf``(``"%d is multiple of 5\n"``, n); ` `    ``else` `        ``printf``(``"%d is not a multiple of 5\n"``, n); ` ` `  `    ``return` `0; ` `} `

## Java

 `// Assuming that integer  ` `// takes 4 bytes, there  ` `// can be maximum 10 ` `// digits in a integer ` `class` `GFG ` `{ ` `static` `int` `MAX = ``11``; ` ` `  `static` `boolean` `isMultipleof5(``int` `n) ` `{ ` `    ``char` `str[] = ``new` `char``[MAX]; ` `    ``int` `len = str.length; ` `     `  `    ``// Check the last  ` `    ``// character of string ` `    ``if` `(str[len - ``1``] == ``'5'` `||  ` `        ``str[len - ``1``] == ``'0'` `) ` `         `  `        ``return` `true``; ` `     `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `public` `static` `void` `main(String[] args) ` `{ ` `    ``int` `n = ``19``; ` `    ``if` `( isMultipleof5(n) == ``true` `) ` `        ``System.out.println(n +``" is multiple "` `+ ` `                                       ``"of 5"``); ` `    ``else` `        ``System.out.println(n +``" is not a "` `+ ` `                           ``"multiple of 5"``); ` `} ` `} ` ` `  `// This code is contributed by mits `

## Python3

 `# Assuming that integer ` `# takes 4 bytes, there  ` `# can be maximum 10  ` `# digits in a integer ` `MAX` `=` `11``; ` ` `  `def` `isMultipleof5(n): ` `    ``s ``=` `str``(n); ` `    ``l ``=` `len``(s); ` `     `  `    ``# Check the last  ` `    ``# character of string ` `    ``if` `(s[l ``-` `1``] ``=``=` `'5'` `or` `        ``s[l ``-` `1``] ``=``=` `'0'``): ` `        ``return` `True``; ` `    ``return` `False``; ` ` `  `# Driver Code ` `n ``=` `19``; ` `if` `(isMultipleof5(n) ``=``=` `True` `): ` `    ``print``(n, ``"is multiple of 5"``); ` `else``: ` `    ``print``(n, ``"is not a multiple of 5"``); ` ` `  `# This code is contributed by mits `

## C#

 `using` `System; ` ` `  `// Assuming that integer ` `// takes 4 bytes, there  ` `// can be maximum 10  ` `// digits in a integer ` `class` `GFG ` `{ ` `static` `int` `MAX = 11; ` ` `  `static` `bool` `isMultipleof5(``int` `n) ` `{ ` `    ``char``[] str = ``new` `char``[MAX]; ` `    ``int` `len = str.Length; ` `     `  `    ``// Check the last ` `    ``// character of string ` `    ``if` `(str[len - 1] == ``'5'` `||  ` `        ``str[len - 1] == ``'0'` `) ` `         `  `        ``return` `true``; ` `     `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `static` `void` `Main() ` `{ ` `    ``int` `n = 19; ` `    ``if` `( isMultipleof5(n) == ``true` `) ` `        ``Console.WriteLine(``"{0} is "` `+  ` `                          ``"multiple of 5"``, n); ` `    ``else` `        ``Console.WriteLine(``"{0} is not a "` `+ ` `                          ``"multiple of 5"``, n); ` `} ` `} ` ` `  `// This code is contributed by mits `

## PHP

 ` `

Output:

`19 is not a multiple of 5`

Thanks to Baban_Rathore for suggesting this method.

Method 3 (Set last digit as 0 and use floating point trick)
A number n can be a mulpile of 5 in two cases. When last digit of n is 5 or 10. If last bit in binary equivalent of n is set (which can be the case when last digit is 5) then we multiply by 2 using n<<=1 to make sure that if the number is multpile of 5 then we have the last digit as 0. Once we do that, our work is to just check if the last digit is 0 or not, which we can do using float and integer comparison trick.

## C++

 `#include ` `using` `namespace` `std; ` `bool` `isMultipleof5(``int` `n)  ` `{  ` `    ``// If n is a multiple of 5 then we  ` `    ``// make sure that last digit of n is 0  ` `    ``if` `( (n & 1) == 1 )  ` `        ``n <<= 1;  ` `     `  `    ``float` `x = n;  ` `    ``x = ( (``int``)(x * 0.1) ) * 10;  ` `     `  `    ``// If last digit of n is 0 then n  ` `    ``// will be equal to (int)x  ` `    ``if` `( (``int``)x == n )  ` `        ``return` `true``;  ` ` `  `    ``return` `false``;  ` `}  ` ` `  `// Driver Code  ` `int` `main()  ` `{  ` `    ``int` `i = 19;  ` `    ``if` `( isMultipleof5(i) == ``true` `)  ` `        ``cout << i <<``" is multiple of 5\n"``;  ` `    ``else` `        ``cout << i << ``" is not a multiple of 5\n"``;  ` ` `  `    ``getchar``();  ` `    ``return` `0;  ` `}  ` ` `  `// This code is contributed by shubhamsingh10 `

## C

 `#include ` ` `  `bool` `isMultipleof5(``int` `n) ` `{ ` `    ``// If n is a multiple of 5 then we ` `    ``// make sure that last digit of n is 0  ` `    ``if` `( (n & 1) == 1 ) ` `        ``n <<= 1; ` `     `  `    ``float` `x = n; ` `    ``x = ( (``int``)(x * 0.1) ) * 10; ` `     `  `    ``// If last digit of n is 0 then n  ` `    ``// will be equal to (int)x  ` `    ``if` `( (``int``)x == n ) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `i = 19; ` `    ``if` `( isMultipleof5(i) == ``true` `) ` `        ``printf``(``"%d is multiple of 5\n"``, i); ` `    ``else` `        ``printf``(``"%d is not a multiple of 5\n"``, i); ` ` `  `    ``getchar``(); ` `    ``return` `0; ` `} `

## Java

 `// Java code to check if ` `// a number is multiple of ` `// 5 without using / and % ` `class` `GFG ` `{ ` `static` `boolean` `isMultipleof5(``int` `n) ` `{ ` `    ``// If n is a multiple of 5  ` `    ``// then we make sure that ` `    ``// last digit of n is 0  ` `    ``if` `((n & ``1``) == ``1``) ` `        ``n <<= ``1``; ` `     `  `    ``float` `x = n; ` `    ``x = ((``int``)(x * ``0.1``)) * ``10``; ` `     `  `    ``// If last digit of n is  ` `    ``// 0 then n will be equal ` `    ``// to (int)x  ` `    ``if` `((``int``)x == n) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `public` `static` `void` `main(String[] args) ` `{ ` `    ``int` `i = ``19``; ` `    ``if` `(isMultipleof5(i) == ``true``) ` `        ``System.out.println(i + ``"is multiple of 5"``); ` `    ``else` `        ``System.out.println(i + ``" is not a "` `+  ` `                            ``"multiple of 5"``); ` `} ` `} ` ` `  `// This code is contributed  ` `// by mits `

## Python3

 `# Python code to check ` `# if a number is multiple of ` `# 5 without using / and % ` ` `  `def` `isMultipleof5(n): ` `     `  `    ``# If n is a multiple of 5 then we ` `    ``# make sure that last digit of n is 0  ` `    ``if` `( (n & ``1``) ``=``=` `1` `): ` `        ``n <<``=` `1``; ` ` `  `    ``x ``=` `n ` `    ``x ``=` `( (``int``)(x ``*` `0.1``) ) ``*` `10` `     `  `    ``# If last digit of n is 0 ` `    ``# then n will be equal to x ` `    ``if` `( x ``=``=` `n ): ` `        ``return` `1` ` `  `    ``return` `0` `     `  `# Driver Code ` `i ``=` `19` `if` `( isMultipleof5(i) ``=``=` `1` `): ` `    ``print` `(i, ``"is multiple of 5"``) ` `else``: ` `    ``print` `(i, ``"is not a multiple of 5"``) ` ` `  `# This code is contributed ` `# by Sumit Sudhakar `

## C#

 `// C# code to check if ` `// a number is multiple of ` `// 5 without using / and % ` `class` `GFG ` `{ ` `static` `bool` `isMultipleof5(``int` `n) ` `{ ` `    ``// If n is a multiple of 5  ` `    ``// then we make sure that ` `    ``// last digit of n is 0  ` `    ``if` `((n & 1) == 1) ` `        ``n <<= 1; ` `     `  `    ``float` `x = n; ` `    ``x = ((``int``)(x * 0.1)) * 10; ` `     `  `    ``// If last digit of n is  ` `    ``// 0 then n will be equal ` `    ``// to (int)x  ` `    ``if` `((``int``)x == n) ` `        ``return` `true``; ` ` `  `    ``return` `false``; ` `} ` ` `  `// Driver Code ` `public` `static` `void` `Main() ` `{ ` `    ``int` `i = 19; ` `    ``if` `(isMultipleof5(i) == ``true``) ` `        ``System.Console.WriteLine(i + ``"is multiple of 5"``); ` `    ``else` `        ``System.Console.WriteLine(i + ``" is not a "` `+  ` `                                   ``"multiple of 5"``); ` `} ` `} ` ` `  `// This code is contributed  ` `// by mits `

## PHP

 ` `

Output :

```19 is not a multiple of 5
```

Thanks to darkprince for suggesting this method.

Please write comments if you find the above codes/algorithms incorrect, or find other ways to solve the same problem.

Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.

My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.