fork(4) download
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <math.h>
  5.  
  6. int primeFactors (int input);
  7.  
  8. int main (void) {
  9.  
  10. int input;
  11.  
  12. while ( 1 ) {
  13. //inputNumber (&input);
  14. primeFactors (100);
  15. break;
  16. }
  17. return 0;
  18. }
  19.  
  20.  
  21. int primeFactors (int input){
  22. int cnt = 0, i = 3, cnt_sum;
  23.  
  24. printf("%d = ", input);
  25.  
  26. if(input > 1){
  27. while ( input % 2 == 0){
  28. input/=2;
  29. cnt++;
  30. }
  31. if(cnt == 1){
  32. printf("%d",2);}
  33. else if( cnt > 0 && cnt != 1){
  34. printf("%d^%d",2,cnt);
  35. }
  36. cnt_sum += cnt;
  37. for ( ; i <= sqrt(input); i = i+2){
  38. cnt = 0;
  39. while(input % i == 0){
  40. cnt++;
  41. input /= i;
  42. }
  43. if(cnt == 1){
  44. printf("%d",i);
  45. }
  46. else if( cnt > 0 && cnt != 1){
  47. printf("%d^%d",i,cnt);
  48. }
  49. cnt_sum += cnt;
  50. }
  51. if(cnt_sum > 1){
  52. printf("\nIt is a composite number !\n");
  53. }
  54. else{
  55. printf("%d\nIt is a prime number !\n",input);
  56. }
  57. }
  58. else{
  59. printf("\nIt is an invalid number !\n");
  60. }
  61. }
Success #stdin #stdout 0s 9432KB
stdin
100


100
stdout
100 = 2^25^2
It is a composite number !