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

• Last Updated : 27 Jan, 2022

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