How to find the prime factors of a number in C

1 Answer

0 votes
#include <stdio.h>
 
void printPrimeFactor(int n) {
    int div = 2;
    while (n != 0) {
        if (n % div != 0) {
            div = div + 1;
        }
        else {
            printf("%d, ", div);
            n = n / div;
            if (n == 1) {
                break;
            }
        }
    }
    printf("\n");
}
int main() {
   int n = 124;
    
   printPrimeFactor(n); // 2 x 2 x 31
   printPrimeFactor(288); // 2 x 2 x 2 x 2 x 2 x 3 x 3
   printPrimeFactor(1288); // 2 x 2 x 2 x 7 x 23
    
   return 0;
}
 
  
  
  
/*
run:
  
2, 2, 31,
2, 2, 2, 2, 2, 3, 3,
2, 2, 2, 7, 23,
  
*/

 



answered Jul 16, 2020 by avibootz
edited Jul 17, 2020 by avibootz

Related questions

1 answer 111 views
1 answer 99 views
1 answer 137 views
1 answer 80 views
1 answer 86 views
1 answer 60 views
1 answer 112 views
...