Contenu du cours
Bases de C#
Bases de C#
Défi : Méthode Avec Paramètres
Dans ce défi, vous devez créer une nouvelle méthode appelée factorial
qui aura un paramètre appelé n
de type int
. Elle doit calculer le factoriel de la valeur passée n
et afficher le résultat.
Le plan du programme est donné, remplissez les détails manquants pour compléter le programme :
main
using System; namespace ConsoleApp { internal class Program { static void factorial(___) { if(n == 0) { Console.WriteLine(___); } else if (n > 0) { int result = 1; for (int i = 2; i <= ___; i++) { ___ } Console.WriteLine(___); } else { Console.WriteLine(___); } } static void Main(string[] args) { factorial(-1); factorial(0); factorial(5); } } }
Nous avons fait un exercice lié au factoriel dans l'une des sections précédentes, mais pour récapituler, le factoriel d'un nombre est le produit de tous les nombres jusqu'à ce nombre. Par exemple, le factoriel de
5
est1 x 2 x 3 x 4 x 5
qui est120
, de même le factoriel de4
est24
. Il y a deux règles supplémentaires :Le factoriel de
0
est1
;Le factoriel d'un nombre négatif est
indéfini
, il doit donc afficherundefined
.
Pour résoudre la tâche, suivez les étapes suivantes :
Remplissez le blanc pour la méthode
factorial
avec la définition de paramètre appropriée. Elle attend un entier. Déterminez quel devrait être le nom du paramètre en lisant le code interne de la méthode;Si l'argument passé est
0
, il doit afficher une sortie fixe qui est mentionnée dans les indices;La boucle doit continuer jusqu'à (y compris le nombre) l'entier passé. La variable
result
doit être mise à jour avec le produit d'elle-même avec la variable de boucle. En bref :result *= i
;Si le nombre d'entrée est négatif (invalide), il doit afficher "undefined".
main
using System; namespace ConsoleApp { internal class Program { static void factorial(int n) { if(n == 0) { Console.WriteLine(1); } else if (n > 0) { int result = 1; for (int i = 2; i <= n; i++) { result *= i; } Console.WriteLine(result); } else { Console.WriteLine("undefined"); } } static void Main(string[] args) { factorial(-1); factorial(0); factorial(5); } } }
Merci pour vos commentaires !