Program to calculate product of digits of a number

24 Nov, 2021
Given a number, the task is to find the product of the digits of a number.
Examples: 
Input: n = 4513
Output: 60

Input: n = 5249
Output: 360
General Algorithm for product of digits in a given number:  
Get the numberDeclare a variable to store the product and set it to 1Repeat the next two steps till the number is not 0Get the rightmost digit of the number with help of remainder ‘%’ operator by dividing it with 10 and multiply it with product.Divide the number by 10 with help of ‘/’ operatorPrint or return the product.
Get the number
Declare a variable to store the product and set it to 1
Repeat the next two steps till the number is not 0
Get the rightmost digit of the number with help of remainder ‘%’ operator by dividing it with 10 and multiply it with product.
Divide the number by 10 with help of ‘/’ operator
Print or return the product.
Below is the solution to get the product of the digits: 
C++
Java
Python3
C#
PHP
Javascript
// C++ program to compute// product of digits in the number.#include<bits/stdc++.h>using namespace std; /* Function to get product of digits */int getProduct(int n){    int product = 1;     while (n != 0)    {        product = product * (n % 10);        n = n / 10;    }     return product;} // Driver programint main(){    int n = 4513;    cout << (getProduct(n));} // This code is contributed by// Surendra_Gangwar
// Java program to compute// product of digits in the number. import java.io.*; class GFG {     /* Function to get product of digits */    static int getProduct(int n)    {        int product = 1;         while (n != 0) {            product = product * (n % 10);            n = n / 10;        }         return product;    }     // Driver program    public static void main(String[] args)    {        int n = 4513;         System.out.println(getProduct(n));    }}
# Python3 program to compute# product of digits in the number. # Function to get product of digitsdef getProduct(n):     product = 1     while (n != 0):        product = product * (n % 10)        n = n // 10     return product # Driver Coden = 4513print(getProduct(n)) # This code is contributed# by mohit kumar
// C# program to compute// product of digits in the number.using System; class GFG{     /* Function to get product of digits */    static int getProduct(int n)    {        int product = 1;         while (n != 0)        {            product = product * (n % 10);            n = n / 10;        }         return product;    }     // Driver program    public static void Main()    {        int n = 4513;         Console.WriteLine(getProduct(n));    }} // This code is contributed by Ryuga
<?php <?php // PHP program to compute// $product of digits in the number. /* Function to get $product of digits */ function getProduct($n){    $product = 1;     while ($n != 0)    {        $product = $product * ( $n % 10);        $n = intdiv($n , 10);    }     return $product;} // Driver code $n = 4513;echo getProduct($n);  // This code is contributed by// ihritik ?>
<script> // JavaScript program to compute// product of digits in the number. // Function to get product of digitsfunction getProduct(n){    let product = 1;     while (n != 0)    {        product = product * (n % 10);        n = Math.floor(n / 10);    }    return product;} // Driver codelet n = 4513; document.write(getProduct(n)); // This code is contributed by Manoj. </script>
60
 
Convert the integer to string
Traverse the string and multiply the characters by converting them to integer
When this method can be used?: When the number of digits of a number exceeds  , we can’t take that number as an integer since the range of long long int doesn’t satisfy the given number. So take input as a string, run a loop from start to the length of the string and increase the sum with that character(in this case it is numeric)
Below is the implementation:
C++
Java
Python3
C#
Javascript
#include <iostream>using namespace std;int getProduct(string str){    int product = 1;      // Traversing through the string    for (int i = 0; i < str.length(); i++) {        // Since ascii value of        // numbers starts from 48        // so we subtract it from sum        product = product * (str[i] - 48);    }    return product;}  // Driver Codeint main(){    string st = "4513";    cout << getProduct(st);    return 0;}
import java.io.*;  class GFG {     static int getProduct(String str){    int product = 1;      // Traversing through the string    for (int i = 0; i < str.length(); i++)    {               // Since ascii value of        // numbers starts from 48        // so we subtract it from sum        product *= str.charAt(i) - '0';    }    return product;}  // Driver Codepublic static void main(String[] args){    String st = "4513";    System.out.println(getProduct(st));     }}//this code is contributed by shivanisinghss2110
# Python3 program to compute# product of digits in the number. # Function to get product of digitsdef getProduct(n):     product = 1     # Converting integer to string    num = str(n)         # Traversing the string    for i in num:        product = product * int(i)     return product  # Driver Coden = 4513print(getProduct(n)) # This code is contributed by vikkycirus
using System;using System.Collections; class GFG{     static int getProduct(String str){    int product = 1;      // Traversing through the string    for (int i = 0; i < str.Length; i++)    {               // Since ascii value of        // numbers starts from 48        // so we subtract it from sum        product = product * (str[i] - 48);    }    return product;}  // Driver Codepublic static void Main(String[] args){    String st = "4513";    Console.Write(getProduct(st));     }} //This code is contributed by shivanisinghss2110
<script> function getProduct(str){    let product = 1;       // Traversing through the string    for (let i = 0; i < str.length; i++)    {             // Since ascii value of        // numbers starts from 48        // so we subtract it from sum        product = product * (parseInt(str[i]));    }    return product;} // Driver Codelet st = "4513";document.write(getProduct(st)); // This code is contributed by unknown2108</script>
Output:
60
Method #3: Recursion
Get the number Get the remainder and pass the next remaining digitsGet the rightmost digit of the number with help of the remainder ‘%’ operator by dividing it by 10 and multiply it to the product.  Divide the number by 10 with help of ‘/’ operator to remove the rightmost digit Check the base case with n = 0Print or return the product
Get the number
 Get the remainder and pass the next remaining digits
Get the rightmost digit of the number with help of the remainder ‘%’ operator by dividing it by 10 and multiply it to the product.
  Divide the number by 10 with help of ‘/’ operator to remove the rightmost digit
 Check the base case with n = 0
Print or return the product
C++
//Recursive function to get product of the digits #include <iostream>using namespace std; int getProduct(int n){    // Base Case    if(n == 0){        return 1 ;    }         // get the last digit and multiply it with remaining digits    return (n%10) * getProduct(n/10) ;} int main() {    // call the function    cout<<getProduct(125) ;    return 0;}
mohit kumar 29
ankthon
SURENDRA_GANGWAR
ihritik
vikkycirus
mank1083
swarnalii
unknown2108
shivanisinghss2110
prasanna1995
number-digits
School Programming
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.