// Algorithmes de Factoriel en C#
// Fonction de factoriel récursive
public static double factorielRecursif(int n)
{
if (n > 1) return n * factorielRecursif(n - 1);
else return 1;
}
// Fonction de factoriel récursive méthode 2
public static double factorielRecursif1(int n)
{
if (1 < n) return n * factorielRecursif1(n - 1);
else return 1;
}
// Fonction de factoriel par une boucle While et une décrémentation
public static double factoBoucleWhile(double n)
{
double res = 1;
while (n > 1) res *= n--;
return res;
}
// Fonction de factoriel par une boucle While et une incrémentation
public static double factoBoucleWhile2(double n)
{
double res = 1;
double i = 1;
while (i < n) res *= i++;
return res;
}
// Fonction de factoriel par une boucle For et une décrémentation
public static double factoBoucleFor(double n)
{
double resultat = 1;
for (double i = n; i > 1; i--)resultat *= i;
return resultat;
}
// Fonction de factoriel par boucle For et une incrémentation
public static double factoBoucleFor2(double n)
{
double resultat = 1;
for (double i = 1; i < n; i++) resultat *= i;
return resultat;
}