Write a C program to input a number from user and find Prime factors of the given number using loop. C program to list all prime factors of a given number. Logic to find prime factors of a number in C programming.
Input any number: 10
Prime factors of 10: 2, 5
Required knowledge
What is Prime factor?
Logic to check prime factors of a number
- Input a number from user. Store it in some variable say num.
- Run a loop from 2 to
num/2
, increment 1 in each iteration. The loop structure should look likefor(i=2; i<=num/2; i++)
. - Inside the loop, first check if i is a factor of num or not. If it is a factor then check it is prime or not.
Program to find prime factors of a number
/**
* C program to find all prime factors of a given number
*/
#include <stdio.h>
int main()
{
int i, j, num, isPrime;
/* Input a number from user */
printf("Enter any number to print Prime factors: ");
scanf("%d", &num);
printf("All Prime Factors of %d are: \n", num);
/* Find all Prime factors */
for(i=2; i<=num; i++)
{
/* Check 'i' for factor of num */
if(num%i==0)
{
/* Check 'i' for Prime */
isPrime = 1;
for(j=2; j<=i/2; j++)
{
if(i%j==0)
{
isPrime = 0;
break;
}
}
/* If 'i' is Prime number and factor of num */
if(isPrime==1)
{
printf("%d, ", i);
}
}
}
return 0;
}
Comments
Post a Comment