Java Program to Check if all digits of a number divide it
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.
Java
// 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 = n % 10 ; if ((checkDivisibility(n, digit)) == false ) return false ; temp /= 10 ; } return true ; } // Driver function public static void main(String args[]) { int n = 128 ; // function call to check // digits divisibility if (allDigitsDivide(n)) System.out.println( "Yes" ); else System.out.println( "No" ); } } /*This code is contributed by Nikita Tiwari.*/ |
Output:
Yes
Time Complexity: O(log10n), where n represents the given integer.
Auxiliary Space: O(1), no extra space is required, so it is a constant.
Please refer complete article on Check if all digits of a number divide it for more details!
Please Login to comment...