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 return if the input is negative?

Can you provide an example input and expected output?

Awesome!

Completion rate improved to 1.59

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