## Find prime factors of a number

Finding prime factors of a number input by the user.

## Learning Objectives

- Finding factors of number up to a level where all factors are prime.

## Source Code

`#include <iostream>`

using namespace std;

int main()

{

int n;

cout<<"Enter a positive integer: ";

cin>>n;

cout<<"The prime factors are: ";

for (int i=2; i <= n; i++)

{

while(n % i == 0)

{

n /= i;

cout<<i<<" ";

}

}

return 0;

}

## Run Output

## Code Understanding

**int n; cout<<“Enter a positive integer: “; cin>>n;**

Collecting the input number from the user.

**cout<<“The prime factors are: “;** //Prompt before printing

**for (int i=2; i <= n; i++)** //Begins from 2 as no prime factor can not be less than 2

{

**while(n % i == 0)** //This loop works till the factor is identified

{

**n /= i; ** //When identified the number is reduced by dividing with identified number

**cout<<i<<” “;** //Identified number is printed.

**}**

** }**

## Notes

- This code can be modified slightly to get prime factor only once.
- One can also modified it to store prime-factor in an array and then manipulate the array as required.
- Every positive integer number can be reduced to its prime factors because after reducing to prime factor further factorisation would not be possible, as a prime number is divisible by 1 and the number itself.

**Suggested Filename(s): **primefac.cpp

sunmitra| Created: 31-Jan-2018 | Updated: 31-Jan-2018|