|
|
@ -1,11 +1,17 @@ |
|
|
|
#include <stdio.h> |
|
|
|
|
|
|
|
int factorial(int n) { |
|
|
|
if (n == 0 || n == 1) { |
|
|
|
return 1; |
|
|
|
} else { |
|
|
|
return n * factorial(n - 1); |
|
|
|
unsigned long long factorial(int n) { |
|
|
|
if (n < 0) { |
|
|
|
return 0; // Fakultät für negative Zahlen ist nicht definiert |
|
|
|
} |
|
|
|
|
|
|
|
unsigned long long result = 1; |
|
|
|
|
|
|
|
for (int i = 1; i <= n; ++i) { |
|
|
|
result *= i; |
|
|
|
} |
|
|
|
|
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
int run_factorial() { |
|
|
@ -13,6 +19,8 @@ int run_factorial() { |
|
|
|
printf("Gib eine Zahl ein, um die Fakultät zu berechnen: "); |
|
|
|
scanf("%d", &num); |
|
|
|
|
|
|
|
unsigned long long result = factorial(num); |
|
|
|
|
|
|
|
if (num < 0) { |
|
|
|
printf("Fakultät ist für negative Zahlen nicht definiert.\n"); |
|
|
|
} else { |
|
|
|