En este ejemplo, aprenderá a calcular el factorial de un número ingresado por el usuario.
Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación en C:
- Tipos de datos C
- Operadores de programación C
- C if … else Statement
- C para bucle
El factorial de un número positivo n viene dado por:
factorial of n (n!) = 1 * 2 * 3 * 4… .n
El factorial de un número negativo no existe. Y el factorial de 0 es 1.
Factorial de un número
#include int main() ( int n, i; unsigned long long fact = 1; printf("Enter an integer: "); scanf("%d", &n); // shows error if the user enters a negative integer if (n < 0) printf("Error! Factorial of a negative number doesn't exist."); else ( for (i = 1; i <= n; ++i) ( fact *= i; ) printf("Factorial of %d = %llu", n, fact); ) return 0; )
Salida
Ingrese un número entero: 10 Factorial de 10 = 3628800
Este programa toma un número entero positivo del usuario y calcula el factorial usando el for
ciclo.
Dado que el factorial de un número puede ser muy grande, el tipo de variable factorial se declara como unsigned long long
.
Si el usuario ingresa un número negativo, el programa muestra un mensaje de error personalizado.
También puedes encontrar el factorial de un número usando la recursividad.