Udfordring: Metode med Parametre
I denne udfordring skal du oprette en ny metode kaldet factorial, som har én parameter kaldet n af typen int. Metoden skal beregne faktorialen af den givne værdi n og vise resultatet.
Programskabelonen er givet; udfyld de manglende detaljer for at fuldføre programmet:
main.cs
1234567891011121314151617181920212223242526272829303132333435using 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); } } }
- Vi har tidligere arbejdet med en opgave om faktorial, men for at opsummere: Faktorialen af et tal er produktet af alle tal op til dette tal.
For eksempel er faktorialen af
5lig med1 x 2 x 3 x 4 x 5, hvilket er120. Tilsvarende er faktorialen af4lig med24. Der er to yderligere regler:- Faktorialen af
0er1; - Faktorialen af et negativt tal er
undefined, så der skal visesundefined.
- Faktorialen af
- For at løse opgaven, følg disse trin:
- Udfyld det tomme felt for
factorial-metoden med den korrekte parameterdefinition. Den forventer et heltal. Find ud af, hvad parameterens navn skal være ved at læse metodens indre kode; - Hvis det overførte argument er
0, skal der vises en fast outputværdi, som er nævnt i tipsene; - Løkken skal fortsætte op til og med det overførte heltal. Variablen
resultskal opdateres med produktet af sig selv og løkkevariablen. Kort sagt:result *= i; - Hvis inputtallet er negativt (ugyldigt), skal der vises "undefined".
- Udfyld det tomme felt for
main.cs
1234567891011121314151617181920212223242526272829303132333435using 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); } } }
Var alt klart?
Tak for dine kommentarer!
Sektion 6. Kapitel 5
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 1.59
Udfordring: Metode med Parametre
Stryg for at vise menuen
I denne udfordring skal du oprette en ny metode kaldet factorial, som har én parameter kaldet n af typen int. Metoden skal beregne faktorialen af den givne værdi n og vise resultatet.
Programskabelonen er givet; udfyld de manglende detaljer for at fuldføre programmet:
main.cs
1234567891011121314151617181920212223242526272829303132333435using 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); } } }
- Vi har tidligere arbejdet med en opgave om faktorial, men for at opsummere: Faktorialen af et tal er produktet af alle tal op til dette tal.
For eksempel er faktorialen af
5lig med1 x 2 x 3 x 4 x 5, hvilket er120. Tilsvarende er faktorialen af4lig med24. Der er to yderligere regler:- Faktorialen af
0er1; - Faktorialen af et negativt tal er
undefined, så der skal visesundefined.
- Faktorialen af
- For at løse opgaven, følg disse trin:
- Udfyld det tomme felt for
factorial-metoden med den korrekte parameterdefinition. Den forventer et heltal. Find ud af, hvad parameterens navn skal være ved at læse metodens indre kode; - Hvis det overførte argument er
0, skal der vises en fast outputværdi, som er nævnt i tipsene; - Løkken skal fortsætte op til og med det overførte heltal. Variablen
resultskal opdateres med produktet af sig selv og løkkevariablen. Kort sagt:result *= i; - Hvis inputtallet er negativt (ugyldigt), skal der vises "undefined".
- Udfyld det tomme felt for
main.cs
1234567891011121314151617181920212223242526272829303132333435using 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); } } }
Var alt klart?
Tak for dine kommentarer!
Sektion 6. Kapitel 5