Spy Number (Sum and Products of Digits are same)

A number is said to be a Spy number if the sum of all the digits is equal to the product of all digits.
Examples :

Input : 1412
Explanation : 
sum = (1 + 4 + 1 + 2) = 8
product = (1 * 4 * 1 * 2) = 8
since, sum == product == 8
Output : Spy Number

Input : 132
Explanation : 
sum = (1 + 3 + 2) = 6
product = (1 * 3 * 2) = 6
since, sum == product == 6
Output : Spy Number

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP program to check
// a spy number
#include <bits/stdc++.h>
using namespace std;
  
// Function to 
// check spy number
bool checkSpy(int num)
{
    int digit, sum = 0, 
        product = 1;
    while (num > 0) 
    {
        digit = num % 10;
          
        // getting sum of digits
        sum += digit; 
          
        // getting product of digits
        product *= digit; 
        num = num / 10;
    }
      
    if (sum == product)
        return true;
    else
        return false;
}
  
// Driver code
int main()
{
    int num = 1412;
    if (checkSpy(num))
        cout << "The number is " 
             << "a Spy number"
             << endl;
    else
        cout << "The number is "
             << "NOT a spy number"
             << endl;
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to 
// check Spy number
import java.util.*;
  
class GFG 
{
      
    // boolean function to 
    // check Spy number
    static boolean checkSpy(int input)
    {
  
        int digit, sum = 0
               product = 1;
        while (input > 0)
        {
            digit = input % 10;
              
            // getting the
            // sum of digits
            sum += digit; 
              
            // getting the product
            // of digits
            product *= digit; 
            input = input / 10;
        }
          
        // Comparing the 
        // sum and product
        if (sum == product)
            return true;
        else
            return false;
    }
      
    // Driver code
    public static void main(String args[])
    {
        int input = 1412;
        if (checkSpy(input))
            System.out.println("The number is "+
                                "a Spy number");
        else
            System.out.println("The number is "+
                            "NOT a Spy number");
    }
}

chevron_right


Python

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python program to check
# Spy number
  
# Function to check
# Spy number
def checkSpy(num):
    sums = 0
    product = 1
    while num>0:
        digit = num % 10
          
        # getting the 
        # sum of digits
        sums = sums + digit
          
        # getting the product
        # of digits
        product = product * digit
        num = num / 10
          
    if sums == product:
        return True
    else:
        return False
  
# Driver Code
num = 1412
if (checkSpy(num)):
    print("The number is a Spy Number")
else:
    print("The number is NOT a spy number")

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to check 
// Spy number
using System;
  
class GFG 
{
  
    // boolean function to 
    // check Spy number
    static bool checkSpy(int input)
    {
  
        int digit, sum = 0, 
               product = 1;
        while (input > 0) 
        {
            digit = input % 10;
  
            // getting the sum
            // of digits
            sum += digit;
  
            // getting the product
            // of digits
            product *= digit;
            input = input / 10;
        }
  
        // Comparing the sum
        // and product
        if (sum == product)
            return true;
        else
            return false;
    }
  
    // Driver code
    public static void Main()
    {
        int input = 1412;
        if (checkSpy(input))
            Console.WriteLine("The number is " +
                                "a Spy number");
        else
            Console.WriteLine("The number is " +
                            "NOT a Spy number");
    }
}
  
// 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 
// a spy number
  
// Function to check 
// spy number
function checkSpy($num)
{
    $digit; $sum = 0; 
    $product = 1;
    while ($num > 0) 
    {
        $digit = $num % 10;
          
        // getting sum 
        // of digits
        $sum += $digit
          
        // getting product
        // of digits
        $product *= $digit
        $num = $num / 10;
    }
      
    if ($sum == $product)
        return 1;
    else
        return -1;
}
  
// Driver code
$num = 1412;
if (checkSpy($num))
    echo "The number is a ".
          "Spy number","\n";
      
else
    echo "The number is NOT "
          "a spy number","\n";
  
// This code is contributed by ajit.
?>

chevron_right



Output :

The number is a Spy number

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

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.



My Personal Notes arrow_drop_up

Improved By : jit_t



Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.