Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Metodi Parametreilla | Metodit
C# Perusteet

bookHaaste: Metodi Parametreilla

Tässä haasteessa sinun tulee luoda uusi metodi nimeltä factorial, jolla on yksi parametri nimeltä n tyyppiä int. Sen tulee laskea annetun arvon n kertoma ja tulostaa tulos.

Ohjelman runko on annettu, täydennä puuttuvat kohdat ohjelman viimeistelemiseksi:

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. Olemme tehneet kertomaan liittyvän harjoituksen aiemmassa osiossa, mutta kertauksena: luvun kertoma on kaikkien siihen asti olevien lukujen tulo.
    Esimerkiksi luvun 5 kertoma on 1 x 2 x 3 x 4 x 5, joka on 120, samoin luvun 4 kertoma on 24. On myös kaksi lisäsääntöä:
    • Luvun 0 kertoma on 1;
    • Negatiivisen luvun kertoma on undefined, joten sen tulee tulostaa undefined.
  2. Tehtävän ratkaisemiseksi noudata seuraavia vaiheita:
    • Täydennä factorial-metodin parametri oikealla määrittelyllä. Se odottaa kokonaislukua. Päättele parametrin nimi lukemalla metodin sisäinen koodi;
    • Jos annettu argumentti on 0, sen tulee näyttää kiinteä tulos, joka on mainittu vinkeissä;
    • Silmukan tulee jatkua annetun kokonaisluvun (mukaan lukien) loppuun asti. result-muuttujaa tulee päivittää kertomalla se silmukan muuttujalla. Lyhyesti: result *= i;
    • Jos syötetty luku on negatiivinen (virheellinen), sen tulee tulostaa "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); } } }

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 6. Luku 5

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

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

What should the method output if the input is a negative number?

Can you provide a hint for implementing the factorial calculation?

Awesome!

Completion rate improved to 1.56

bookHaaste: Metodi Parametreilla

Pyyhkäise näyttääksesi valikon

Tässä haasteessa sinun tulee luoda uusi metodi nimeltä factorial, jolla on yksi parametri nimeltä n tyyppiä int. Sen tulee laskea annetun arvon n kertoma ja tulostaa tulos.

Ohjelman runko on annettu, täydennä puuttuvat kohdat ohjelman viimeistelemiseksi:

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. Olemme tehneet kertomaan liittyvän harjoituksen aiemmassa osiossa, mutta kertauksena: luvun kertoma on kaikkien siihen asti olevien lukujen tulo.
    Esimerkiksi luvun 5 kertoma on 1 x 2 x 3 x 4 x 5, joka on 120, samoin luvun 4 kertoma on 24. On myös kaksi lisäsääntöä:
    • Luvun 0 kertoma on 1;
    • Negatiivisen luvun kertoma on undefined, joten sen tulee tulostaa undefined.
  2. Tehtävän ratkaisemiseksi noudata seuraavia vaiheita:
    • Täydennä factorial-metodin parametri oikealla määrittelyllä. Se odottaa kokonaislukua. Päättele parametrin nimi lukemalla metodin sisäinen koodi;
    • Jos annettu argumentti on 0, sen tulee näyttää kiinteä tulos, joka on mainittu vinkeissä;
    • Silmukan tulee jatkua annetun kokonaisluvun (mukaan lukien) loppuun asti. result-muuttujaa tulee päivittää kertomalla se silmukan muuttujalla. Lyhyesti: result *= i;
    • Jos syötetty luku on negatiivinen (virheellinen), sen tulee tulostaa "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); } } }

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 6. Luku 5
some-alt