Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Défi : Méthode Avec Paramètres | Méthodes
Bases de C#

bookDé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 nommé n de type int. Elle doit calculer la factorielle de la valeur passée n et afficher le résultat.

Le plan du programme est donné, complétez les détails manquants pour finaliser le programme :

main.cs

main.cs

copy
1234567891011121314151617181920212223242526272829303132333435
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); } } }
  1. Nous avons déjà réalisé un exercice lié à la factorielle dans l'une des sections précédentes, mais pour rappel, la factorielle d'un nombre est le produit de tous les nombres jusqu'à ce nombre. Par exemple, la factorielle de 5 est 1 x 2 x 3 x 4 x 5, soit 120, de même la factorielle de 4 est 24. Il existe deux règles supplémentaires :
    • La factorielle de 0 est 1 ;
    • La factorielle d'un nombre négatif est undefined, donc elle doit afficher undefined.
  2. Pour résoudre la tâche, suivez les étapes suivantes :
    • Complétez le champ vide pour la méthode factorial avec la définition de paramètre appropriée. Elle attend un entier. Déterminez 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 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 et de la variable de boucle. En résumé : result *= i ;
    • Si le nombre d'entrée est négatif (invalide), il doit afficher "undefined".
main.cs

main.cs

copy
1234567891011121314151617181920212223242526272829303132333435
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); } } }

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 6. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you show me the blueprint of the program that needs to be completed?

What should the method return if the input is negative?

Can you provide an example input and expected output?

Awesome!

Completion rate improved to 1.59

bookDéfi : Méthode Avec Paramètres

Glissez pour afficher le menu

Dans ce défi, vous devez créer une nouvelle méthode appelée factorial qui aura un paramètre nommé n de type int. Elle doit calculer la factorielle de la valeur passée n et afficher le résultat.

Le plan du programme est donné, complétez les détails manquants pour finaliser le programme :

main.cs

main.cs

copy
1234567891011121314151617181920212223242526272829303132333435
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); } } }
  1. Nous avons déjà réalisé un exercice lié à la factorielle dans l'une des sections précédentes, mais pour rappel, la factorielle d'un nombre est le produit de tous les nombres jusqu'à ce nombre. Par exemple, la factorielle de 5 est 1 x 2 x 3 x 4 x 5, soit 120, de même la factorielle de 4 est 24. Il existe deux règles supplémentaires :
    • La factorielle de 0 est 1 ;
    • La factorielle d'un nombre négatif est undefined, donc elle doit afficher undefined.
  2. Pour résoudre la tâche, suivez les étapes suivantes :
    • Complétez le champ vide pour la méthode factorial avec la définition de paramètre appropriée. Elle attend un entier. Déterminez 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 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 et de la variable de boucle. En résumé : result *= i ;
    • Si le nombre d'entrée est négatif (invalide), il doit afficher "undefined".
main.cs

main.cs

copy
1234567891011121314151617181920212223242526272829303132333435
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); } } }

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 6. Chapitre 5
some-alt