fork download
  1. #include <stdio.h>
  2.  
  3. void factor(int n, int divisor) {
  4. if (n == 1) return;
  5.  
  6. if (n % divisor == 0) {
  7. printf("%d ", divisor);
  8. factor(n / divisor, divisor);
  9. } else {
  10. factor(n, divisor + 1);
  11. }
  12. }
  13.  
  14. int main() {
  15. int n;
  16. printf("3以上の整数を入力してください: ");
  17. scanf("%d", &n);
  18.  
  19. if (n < 3) {
  20. printf("3以上の整数を入力してください。\n");
  21. return 1;
  22. }
  23.  
  24. printf("%d の素因数分解: ", n);
  25. factor(n, 2);
  26. printf("\n");
  27.  
  28. return 0;
  29. }
Success #stdin #stdout 0s 5312KB
stdin
48
stdout
3以上の整数を入力してください: 48 の素因数分解: 2 2 2 2 3