Calculer la factorielle d’un nombre en C
La factorielle d’un nombre est le produit de tous les entiers compris entre 1 et lui-même. Il y’a trois façon pour trouver une factorielle d’un nombre donné, en utilisant la boucle for, la récursivité, ou en créant une fonction sur une plage allant de 1 à X(nombre entré par l’utilisateur). Rappelez-vous que la valeur d’arrêt doit être le nombre entré par l’utilisateur + 1.
Calculer la factorielle en utilisant la boucle for
#include <stdio.h> int main() { int nbr, i, f = 1; printf("Entrez un nombre pour calculer sa factorielle\n"); scanf("%d", &nbr); for (i = 1; i <= nbr; i++) f = f * i; printf("Factorielle de %d = %d\n", nbr, f); return 0; }
La sortie :
Calculer la factorielle en utilisant la récursivité
#include <stdio.h> long factorielle(int n) { if (n == 0) return 1; else return(n * factorielle(n-1)); } int main() { int nbr; long fact; printf("Entrez un nombre pour calculer sa factorielle\n"); scanf("%d", &nbr); if (nbr < 0) printf("La factorielle des entiers négatifs n'est pas définie.\n"); else { fact = factorielle(nbr); printf("%d! = %ld\n", nbr, fact); } return 0; }
La sortie :
Calculer la factorielle en utilisant une fonction
#include <stdio.h> long factorial(int n) { int i; long fact = 1; for (i = 1; i <= n; i++) fact = fact * i; return fact; } int main() { int nbr; printf("Entrez un nombre pour calculer sa factorielle\n"); scanf("%d", &nbr); printf("%d! = %ld\n", nbr, factorial(nbr)); return 0; }
La sortie :