Related Articles

Related Articles

Check if all digits of a number divide it
  • Difficulty Level : Easy
  • Last Updated : 25 Jul, 2020

Given a number n, find whether all digits of n divide it or not.

Examples:

Input : 128
Output : Yes
128 % 1 == 0, 128 % 2 == 0, and 128 % 8 == 0.

Input : 130
Output : No

We want to test whether each digit is non-zero and divides the number. For example, with 128, we want to test d != 0 && 128 % d == 0 for d = 1, 2, 8. To do that, we need to iterate over each digit of the number.

CPP

filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP program to check the number
// is divisible by all digits are not.
#include <bits/stdc++.h>
using namespace std;
  
// Function to check the divisibility
// of the number by its digit.
bool checkDivisibility(int n, int digit)
{
    // If the digit divides the number
    // then return true else return false.
    return (digit != 0 && n % digit == 0);
}
  
// Function to check if all digits
// of n divide it or not
bool allDigitsDivide(int n)
{
    int temp = n;
    while (temp > 0) {
  
        // Taking the digit of the
        // number into digit var.
        int digit = temp % 10;
        if (!(checkDivisibility(n, digit)))
            return false;
  
        temp /= 10;
    }
    return true;
}
  
// Driver function
int main()
{
    int n = 128;
    if (allDigitsDivide(n))
        cout << "Yes";
    else
        cout << "No";
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to check whether
// number is divisible by all its digits.
import java.io.*;
  
class GFG {
  
    // Function to check the divisibility
    // of the number by its digit.
    static boolean checkDivisibility(int n, int digit)
    {
        // If the digit divides the number
        // then return  true else return false.
        return (digit != 0 && n % digit == 0);
    }
  
    // Function to check if all
    // digits of n divide it or not,
    static boolean allDigitsDivide(int n)
    {
        int temp = n;
        while (temp > 0) {
  
            // Taking the digit of the
            // number into var 'digit'.
            int digit = temp % 10;
  
            if ((checkDivisibility(n, digit)) == false)
                return false;
  
            temp /= 10;
        }
        return true;
    }
  
    // Driver function
    public static void main(String args[])
    {
        int n = 128;
  
        // funtion call to check
        // digits divisibility
        if (allDigitsDivide(n))
            System.out.println("Yes");
  
        else
            System.out.println("No");
    }
}
  
/*This code is contributed by Nikita Tiwari.*/

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 program to
# check the number is
# divisible by all 
# digits are not.
  
# Function to check 
# the divisibility 
# of the number by
# its digit.
def checkDivisibility(n, digit) :
      
    # If the digit divides the
    # number then return true
    # else return false.
    return (digit != 0 and n % digit == 0)
      
# Function to check if
# all digits of n divide
# it or not
def allDigitsDivide( n) :
      
    temp = n
    while (temp > 0) :
          
        # Taking the digit of
        # the number into digit
        # var.
        digit = temp % 10
        if ((checkDivisibility(n, digit)) == False) :
            return False
  
        temp = temp // 10
      
    return True
  
# Driver function
n = 128
  
if (allDigitsDivide(n)) :
    print("Yes")
else :
    print("No" )
      
# This code is contributed by Nikita Tiwari.

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to check whether
// number is divisible by all its digits.
using System;
  
class GFG {
  
    // Function to check the divisibility
    // of the number by its digit.
    static bool checkDivisibility(int n, int digit)
    {
        // If the digit divides the number
        // then return true else return false.
        return (digit != 0 && n % digit == 0);
    }
  
    // Function to check if all
    // digits of n divide it or not,
    static bool allDigitsDivide(int n)
    {
        int temp = n;
        while (temp > 0) {
  
            // Taking the digit of the
            // number into var 'digit'.
            int digit = temp % 10;
  
            if ((checkDivisibility(n, digit)) == false)
                return false;
  
            temp /= 10;
        }
        return true;
    }
  
    // Driver function
    public static void Main()
    {
        int n = 128;
  
        // funtion call to check
        // digits divisibility
        if (allDigitsDivide(n))
            Console.WriteLine("Yes");
  
        else
            Console.WriteLine("No");
    }
}
  
/*This code is contributed by vt_m.*/

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
//PHP program to check the number 
// is divisible by all digits are not.
  
// Function to check the divisibility 
// of the number by its digit.
function checkDivisibility($n, $digit)
{
      
    // If the digit divides the number 
    // then return true else return false.
    return ($digit != 0 && $n % $digit == 0);
}
  
// Function to check if all digits 
// of n divide it or not
function allDigitsDivide($n)
{
    $temp = $n;
    while ($temp > 0) {
  
        // Taking the digit of the
        // number into digit var.
        $digit = $temp % 10;
          
        if (!(checkDivisibility($n, $digit)))
            return false;
  
        $temp /= 10;
    }
      
    return true;
}
  
// Driver function
  
    $n = 128;
    if (allDigitsDivide($n))
        echo "Yes"
    else
        echo "No";
      
// This code is contributed by ajit.
?>

chevron_right



Output:

Yes


Alternate Implementation in Python

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python 3 program to
# check the number is
# divisible by all 
# digits are not.
   
# Function to check 
# the divisibility 
# of the number by
# its digit.
def checkDivisibility(n, digit) :
       
    # If the digit divides the
    # number then return true
    # else return false.
    return (digit != 0 and n % digit == 0)
       
# Function to check if
# all digits of n divide
# it or not
def allDigitsDivide( n) :
    nlist = map(int, set(str(n)))
    for digit in nlist :
        if  not (checkDivisibility(n, digit)) :
            return False
    return True
       
   
# Driver function
n = 128
   
print("Yes" if (allDigitsDivide(n)) else "No")

chevron_right


Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.




My Personal Notes arrow_drop_up
Recommended Articles
Page :