Check whether product of digits at even places of a number is divisible by K
Given a number N, the task is to check whether the product of digits at even places of a number is divisible by K. If it is divisible, output “YES” otherwise output “NO”.
Examples:
Input: N = 5478, K = 5 Output: YES Since, 5 * 7 = 35, which is divisible by 5 Input: N = 19270, K = 2 Output: NO
Approach:
- Find product of digits at even places from right to left.
- Then check the divisibility by taking it’s modulo with ‘K’
- If modulo gives 0, output YES, otherwise output NO
Below is the implementation of the above approach:
C++
// C++ implementation of the above approach #include <bits/stdc++.h> using namespace std; // below function checks whether // product of digits at even places // is divisible by K bool productDivisible( int n, int k) { int product = 1, position = 1; while (n > 0) { // if position is even if (position % 2 == 0) product *= n % 10; n = n / 10; position++; } if (product % k == 0) return true ; return false ; } // Driver code int main() { int n = 321922; int k = 3; if (productDivisible(n, k)) cout << "YES" ; else cout << "NO" ; return 0; } |
Java
// JAVA implementation of the above approach class GFG { // below function checks whether // product of digits at even places // is divisible by K static boolean productDivisible( int n, int k) { int product = 1 , position = 1 ; while (n > 0 ) { // if position is even if (position % 2 == 0 ) { product *= n % 10 ; } n = n / 10 ; position++; } if (product % k == 0 ) { return true ; } return false ; } // Driver code public static void main(String[] args) { int n = 321922 ; int k = 3 ; if (productDivisible(n, k)) { System.out.println( "YES" ); } else { System.out.println( "NO" ); } } } |
Python3
# Python3 implementation of the # above approach # below function checks whether # product of digits at even places # is divisible by K def productDivisible(n, k): product = 1 position = 1 while n > 0 : # if position is even if position % 2 = = 0 : product * = n % 10 n = n / 10 position + = 1 if product % k = = 0 : return True return False # Driver code n = 321922 k = 3 if productDivisible(n, k) = = True : print ( "YES" ) else : print ( "NO" ) # This code is contributed # by Shrikant13 |
C#
// C# implementation of the above approach using System; class GFG { // below function checks whether // product of digits at even places // is divisible by K static bool productDivisible( int n, int k) { int product = 1, position = 1; while (n > 0) { // if position is even if (position % 2 == 0) product *= n % 10; n = n / 10; position++; } if (product % k == 0) return true ; return false ; } // Driver code public static void Main() { int n = 321922; int k = 3; if (productDivisible(n, k)) Console.WriteLine( "YES" ); else Console.WriteLine( "NO" ); } } // This code is contributed // by Akanksha Rai(Abby_akku) |
PHP
<?php // PHP implementation of the // above approach // Below function checks whether // product of digits at even places // is divisible by K function productDivisible( $n , $k ) { $product = 1; $position = 1; while ( $n > 0) { // if position is even if ( $position % 2 == 0) $product *= $n % 10; $n = (int)( $n / 10); $position ++; } if ( $product % $k == 0) return true; return false; } // Driver code $n = 321922; $k = 3; if (productDivisible( $n , $k )) echo "YES" ; else echo "NO" ; // This code is contributed by mits ?> |
Output:
YES
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.