# Check if a large number is divisible by 6 or not

• Difficulty Level : Basic
• Last Updated : 04 Jul, 2022

Given a number, the task is to check if a number is divisible by 6 or not. The input number may be large and it may not be possible to store even if we use long long int.

Examples:

```Input  : n = 2112
Output: Yes

Input : n = 1124
Output : No

Input  : n = 363588395960667043875487
Output : No```

## Python3

 `# Python code``# To check whether the given number is divisible by 6 or not` `#input``n``=``363588395960667043875487``# the above input can also be given as n=input() -> taking input from user``# finding given number is divisible by 6 or not``if` `int``(n)``%``6``=``=``0``:``  ``print``(``"Yes"``)``else``:``  ``print``(``"No"``)`

## Javascript

 ``

Output

`No`

Since input number may be very large, we cannot use n % 6 to check if a number is divisible by 6 or not, especially in languages like C/C++. The idea is based on following fact.

```A number is divisible by 6 it's divisible by 2 and 3.
a)  A number is divisible by 2 if its last digit is divisible by 2.
b)  A number is divisible by 3 if sum of digits is divisible by 3.```

Below is the implementation based on above steps.

## C++

 `// C++ program to find if a number is divisible by``// 6 or not``#include``using` `namespace` `std;` `// Function to find that number divisible by 6 or not``bool` `check(string str)``{``    ``int` `n = str.length();` `    ``// Return false if number is not divisible by 2.``    ``if` `((str[n-1]-``'0'``)%2 != 0)``       ``return` `false``;` `    ``// If we reach here, number is divisible by 2.``    ``// Now check for 3.` `    ``// Compute sum of digits``    ``int` `digitSum = 0;``    ``for` `(``int` `i=0; i

## Java

 `// Java program to find if a number is``// divisible by 6 or not``class` `IsDivisible``{``    ``// Function to find that number divisible by 6 or not``    ``static` `boolean` `check(String str)``    ``{``        ``int` `n = str.length();``     ` `        ``// Return false if number is not divisible by 2.``        ``if` `((str.charAt(n-``1``) -``'0'``)%``2` `!= ``0``)``           ``return` `false``;``     ` `        ``// If we reach here, number is divisible by 2.``        ``// Now check for 3.``     ` `        ``// Compute sum of digits``        ``int` `digitSum = ``0``;``        ``for` `(``int` `i=``0``; i

## Python3

 `# Python 3 program to find``# if a number is divisible``# by 6 or not` `# Function to find that number``# is divisible by 6 or not``def` `check(st) :``    ``n ``=` `len``(st)``    ` `    ` `    ``# Return false if number``    ``# is not divisible by 2.``    ``if` `(((``int``)(st[n``-``1``])``%``2``) !``=` `0``) :``        ``return` `False`` ` `    ``# If we reach here, number``    ``# is divisible by 2. Now``    ``# check for 3.`` ` `    ``# Compute sum of digits``    ``digitSum ``=` `0``    ``for` `i ``in` `range``(``0``, n) :``        ``digitSum ``=` `digitSum ``+` `(``int``)(st[i])`` ` `    ``# Check if sum of digits``    ``# is divisible by 3``    ``return` `(digitSum ``%` `3` `=``=` `0``)`  `# Driver code``st ``=` `"1332"``if``(check(st)) :``    ``print``(``"Yes"``)``else` `:``    ``print``(``"No "``)``    ` `# This article is contributed by Nikita Tiwari.`

## C#

 `// C# program to find if a number is``// divisible by 6 or not``using` `System;` `class` `GFG {``    ` `    ``// Function to find that number``    ``// divisible by 6 or not``    ``static` `bool` `check(String str)``    ``{``        ``int` `n = str.Length;``    ` `        ``// Return false if number is``        ``// not divisible by 2.``        ``if` `((str[n-1] -``'0'``) % 2 != 0)``            ``return` `false``;``    ` `        ``// If we reach here, number is``        ``// divisible by 2.``        ``// Now check for 3.``    ` `        ``// Compute sum of digits``        ``int` `digitSum = 0;``        ``for` `(``int` `i = 0; i < n; i++)``            ``digitSum += (str[i] - ``'0'``);``    ` `        ``// Check if sum of digits is``        ``// divisible by 3``        ``return` `(digitSum % 3 == 0);``    ``}``    ` `    ``// main function``    ``public` `static` `void` `Main ()``    ``{``        ``String str = ``"1332"``;``        ` `        ``if``(check(str))``            ``Console.Write(``"Yes"``);``        ``else``            ``Console.Write(``"No"``);``    ``}``}` `// This code is contributed by parashar.`

## PHP

 ``

## Javascript

 ``

Output

`Yes`

Time Complexity: O(logN) where N is the given number

Auxiliary Space: O(1) since no extra space is being used

This article is contributed by DANISH_RAZA . If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.