 GFG App
Open App Browser
Continue

# Find all digits of given number N that are factors of N

Given a number N, the task is to print the digits of N which divide N.

Example:

Input: N = 234
Output: 2 3

Input: N = 555
Output: 5

Approach:  The idea is to iterate over all the digits of N and check whether that digit divides N or not. Follow the steps below to solve the problem:

• Initialize the variables tem as N.
• Traverse over the while loop till tem not equals to 0 and perform the following tasks:
• Initialize the variable rem as tem%10.
• If n%rem equals 0 then print rem as the answer.
• Divide tem by 10.

Below is the implementation of the above approach.

## C++

 `// C++ program for the above approach` `#include ` `using` `namespace` `std;`   `// Function that will print all the factors` `void` `printDigitFactors(``int` `n)` `{`   `    ``// Storing n into a temporary variable` `    ``int` `tem = n;`   `    ``// To store current digit` `    ``int` `rem;`   `    ``// Iterating over all the digits` `    ``while` `(tem != 0) {`   `        ``// Taking last digit` `        ``int` `rem = tem % 10;` `        ``if` `(n % rem == 0) {` `            ``cout << rem << ``' '``;` `        ``}`   `        ``// Removing last digit` `        ``tem /= 10;` `    ``}` `}`   `// Driver Code:` `int` `main()` `{` `    ``int` `N = 234;`   `    ``printDigitFactors(N);` `}`

## Java

 `// Java program for the above approach` `import` `java.io.*;` `import` `java.lang.*;` `import` `java.util.*;`   `class` `GFG {`   `  ``// Function that will print all the factors` `  ``static` `void` `printDigitFactors(``int` `n)` `  ``{`   `    ``// Storing n into a temporary variable` `    ``int` `tem = n;`   `    ``// To store current digit` `    ``int` `rem;`   `    ``// Iterating over all the digits` `    ``while` `(tem != ``0``) {`   `      ``// Taking last digit` `      ``rem = tem % ``10``;` `      ``if` `(n % rem == ``0``) {` `        ``System.out.print(rem + ``" "``);` `      ``}`   `      ``// Removing last digit` `      ``tem /= ``10``;` `    ``}` `  ``}`   `  ``public` `static` `void` `main (String[] args) {`   `    ``int` `N = ``234``;` `    ``printDigitFactors(N);` `  ``}` `}`   `// This code is contributed by hrithikgarg03188.`

## Python3

 `# Python code for the above approach `   `# Function that will print all the factors` `def` `printDigitFactors(n):`   `    ``# Storing n into a temporary variable` `    ``tem ``=` `n;`   `    ``# To store current digit` `    ``rem ``=` `None`   `    ``# Iterating over all the digits` `    ``while` `(tem !``=` `0``):`   `        ``# Taking last digit` `        ``rem ``=` `tem ``%` `10``;` `        ``if` `(n ``%` `rem ``=``=` `0``):` `            ``print``(rem, end``=` `' '``);`   `        ``# Removing last digit` `        ``tem ``=` `tem ``/``/` `10` `    `  `# Driver Code:` `N ``=` `234``;` `printDigitFactors(N);`   `  ``# This code is contributed by gfgking`

## C#

 `// C# program for the above approach` `using` `System;` `class` `GFG` `{`   `  ``// Function that will print all the factors` `  ``static` `void` `printDigitFactors(``int` `n)` `  ``{`   `    ``// Storing n into a temporary variable` `    ``int` `tem = n;`   `    ``// To store current digit` `    ``int` `rem = 0;`   `    ``// Iterating over all the digits` `    ``while` `(tem != 0) {`   `      ``// Taking last digit` `      ``rem = tem % 10;` `      ``if` `(n % rem == 0) {` `        ``Console.Write(rem + ``" "``);` `      ``}`   `      ``// Removing last digit` `      ``tem /= 10;` `    ``}` `  ``}`   `  ``// Driver Code:` `  ``public` `static` `void` `Main()` `  ``{` `    ``int` `N = 234;`   `    ``printDigitFactors(N);` `  ``}` `}`   `// This code is contributed by Samim Hossain Mondal.`

## Javascript

 ``

Output

`3 2 `

Time Complexity: O(K), where K is the number of digits in N
Auxiliary Space: O(1).

My Personal Notes arrow_drop_up