Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Sfida: Metodo con Parametri | Metodi
Fondamenti di C#

bookSfida: Metodo con Parametri

In questa sfida è necessario creare un nuovo metodo chiamato factorial che avrà un parametro chiamato n di tipo int. Deve calcolare il fattoriale del valore passato n e restituire il risultato.

Lo schema del programma è fornito, completa i dettagli mancanti per completare il programma:

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. Abbiamo già svolto un esercizio relativo al fattoriale in una delle sezioni precedenti, ma per ricapitolare, il fattoriale di un numero è il prodotto di tutti i numeri fino a quel numero. Ad esempio, il fattoriale di 5 è 1 x 2 x 3 x 4 x 5 che è 120, allo stesso modo il fattoriale di 4 è 24. Ci sono due regole aggiuntive:
    • Il fattoriale di 0 è 1;
    • Il fattoriale di un numero negativo è undefined, quindi deve restituire undefined.
  2. Per risolvere il compito, seguire i seguenti passaggi:
    • Completa lo spazio vuoto per il metodo factorial con una definizione di parametro appropriata. Si aspetta un intero. Determina quale dovrebbe essere il nome del parametro leggendo il codice interno del metodo;
    • Se l'argomento passato è 0, deve mostrare un output fisso come indicato nei suggerimenti;
    • Il ciclo deve continuare fino (incluso il numero) all'intero passato. La variabile result deve essere aggiornata con il prodotto di se stessa e la variabile del ciclo. In breve: result *= i;
    • Se il numero in ingresso è negativo (non valido), deve restituire "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); } } }

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 6. Capitolo 5

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

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

bookSfida: Metodo con Parametri

Scorri per mostrare il menu

In questa sfida è necessario creare un nuovo metodo chiamato factorial che avrà un parametro chiamato n di tipo int. Deve calcolare il fattoriale del valore passato n e restituire il risultato.

Lo schema del programma è fornito, completa i dettagli mancanti per completare il programma:

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. Abbiamo già svolto un esercizio relativo al fattoriale in una delle sezioni precedenti, ma per ricapitolare, il fattoriale di un numero è il prodotto di tutti i numeri fino a quel numero. Ad esempio, il fattoriale di 5 è 1 x 2 x 3 x 4 x 5 che è 120, allo stesso modo il fattoriale di 4 è 24. Ci sono due regole aggiuntive:
    • Il fattoriale di 0 è 1;
    • Il fattoriale di un numero negativo è undefined, quindi deve restituire undefined.
  2. Per risolvere il compito, seguire i seguenti passaggi:
    • Completa lo spazio vuoto per il metodo factorial con una definizione di parametro appropriata. Si aspetta un intero. Determina quale dovrebbe essere il nome del parametro leggendo il codice interno del metodo;
    • Se l'argomento passato è 0, deve mostrare un output fisso come indicato nei suggerimenti;
    • Il ciclo deve continuare fino (incluso il numero) all'intero passato. La variabile result deve essere aggiornata con il prodotto di se stessa e la variabile del ciclo. In breve: result *= i;
    • Se il numero in ingresso è negativo (non valido), deve restituire "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); } } }

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 6. Capitolo 5
some-alt