Check whether product of digits at even places is divisible by sum of digits at odd place of a number

Given a number N and numbers of digits in N, the task is to check whether the product of digits at even places of a number is divisible by sum of digits at odd place. If it is divisible, output “TRUE” otherwise output “FALSE”.

Examples:

Input: N = 2157 
Output: TRUE
Since, 1 * 7 = 7, which is divisible by 2+5=7

Input: N = 1234
Output: TRUE
Since, 2 * 4 = 8, which is divisible by 1 + 3 = 4  

Approach:

  1. Find product of digits at even places from right to left.
  2. Find sum of digits at odd places from right to left.
  3. Then check the divisibility of product by taking it’s modulo with sum
  4. If modulo gives 0, output TRUE, otherwise output FALSE

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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 sum of digits at odd places
bool productSumDivisible(int n, int size)
{
    int sum = 0, product = 1;
    while (n > 0) {
  
        // if size is even
        if (size % 2 == 0) {
            product *= n % 10;
        }
  
        // if size is odd
        else {
            sum += n % 10;
        }
        n = n / 10;
        size--;
    }
  
    if (product % sum == 0)
        return true;
    return false;
}
  
// Driver code
int main()
{
    int n = 1234;
    int len = 4;
  
    if (productSumDivisible(n, len))
        cout << "TRUE";
    else
        cout << "FALSE";
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// JAVA implementation of the above approach
  
class GFG {
  
    // below function checks whether
    // product of digits at even places
    // is divisible by sum of digits at odd places
    static boolean productSumDivisible(int n, int size)
    {
        int sum = 0, product = 1;
        while (n > 0) {
  
            // if size is even
            if (size % 2 == 0) {
                product *= n % 10;
            
  
            // if size is odd
            else {
                sum += n % 10;
            }
            n = n / 10;
            size--;
        }
  
        if (product % sum == 0) {
            return true;
        }
        return false;
    }
    // Driver code
  
    public static void main(String[] args)
    {
        int n = 1234;
        int len = 4;
  
        if (productSumDivisible(n, len)) {
            System.out.println("TRUE");
        }
        else {
            System.out.println("FALSE");
        }
    }
}

chevron_right


Python 3

# Python 3 implementation of the above approach

# Below function checks whether product
# of digits at even places is divisible
# by sum of digits at odd places
def productSumDivisible(n, size):
sum = 0
product = 1
while (n > 0) :

# if size is even
if (size % 2 == 0) :
product *= n % 10

# if size is odd
else :
sum += n % 10

n = n // 10
size -= 1

if (product % sum == 0):
return True
return False

# Driver code
if __name__ == “__main__”:
n = 1234
len = 4

if (productSumDivisible(n, len)):
print(“TRUE”)
else :
print(“FALSE”)

# This code is contributed by ChitraNayal

C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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 productSumDivisible(int n, int size)
    {
        int sum = 0, product = 1;
        while (n > 0) {
  
            // if size is even
            if (size % 2 == 0) {
                product *= n % 10;
            
  
            // if size is odd
            else {
                sum += n % 10;
            }
            n = n / 10;
            size--;
        }
  
        if (product % sum == 0) {
            return true;
        }
        return false;
    }
  
    // Driver code
    public static void Main()
    {
        int n = 1234;
        int len = 4;
  
        if (productSumDivisible(n, len))
            Console.WriteLine("TRUE");
        else
            Console.WriteLine("FALSE");
    }
}

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP implementation of the above approach
  
// Below function checks whether
// product of digits at even 
// places is divisible by sum of
// digits at odd places
function productSumDivisible($n, $size)
{
    $sum = 0; $product = 1;
    while ($n > 0) 
    {
  
        // if size is even
        if ($size % 2 == 0)
        {
            $product *= $n % 10;
        }
  
        // if size is odd
        else 
        {
            $sum += $n % 10;
        }
        $n = $n / 10;
        $size--;
    }
  
    if ($product % $sum == 0)
        return true;
    return false;
}
  
// Driver code
$n = 1234;
$len = 4;
  
if (productSumDivisible($n, $len))
    echo "TRUE";
else
    echo "FALSE";
  
// This code is contributed by anuj_67..
?>

chevron_right


Output:

TRUE


My Personal Notes arrow_drop_up