Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Desafio: Método com Parâmetros | Métodos
Fundamentos de C#

bookDesafio: Método com Parâmetros

Neste desafio, você precisa criar um novo método chamado factorial, que terá um parâmetro chamado n do tipo int. Ele deve calcular o fatorial do valor passado n e exibir o resultado.

O esqueleto do programa é fornecido, preencha os detalhes que faltam para completar o programa:

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. Já fizemos um exercício relacionado a fatorial em uma das seções anteriores, mas para recapitular, o fatorial de um número é o produto de todos os números até esse número. Por exemplo, o fatorial de 5 é 1 x 2 x 3 x 4 x 5, que é 120; da mesma forma, o fatorial de 4 é 24. Existem duas regras adicionais:
    • O fatorial de 0 é 1;
    • O fatorial de um número negativo é undefined, portanto deve exibir undefined.
  2. Para resolver a tarefa, siga os seguintes passos:
    • Complete o espaço em branco para o método factorial com a definição de parâmetro apropriada. Ele espera um inteiro. Descubra qual deve ser o nome do parâmetro lendo o código interno do método;
    • Se o argumento passado for 0, deve mostrar uma saída fixa que está mencionada nas dicas;
    • O loop deve continuar até (incluindo o número) o inteiro passado. A variável result deve ser atualizada com o produto dela mesma pelo valor da variável do loop. Em resumo: result *= i;
    • Se o número de entrada for negativo (inválido), deve exibir "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); } } }

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 6. Capítulo 5

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

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

bookDesafio: Método com Parâmetros

Deslize para mostrar o menu

Neste desafio, você precisa criar um novo método chamado factorial, que terá um parâmetro chamado n do tipo int. Ele deve calcular o fatorial do valor passado n e exibir o resultado.

O esqueleto do programa é fornecido, preencha os detalhes que faltam para completar o programa:

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. Já fizemos um exercício relacionado a fatorial em uma das seções anteriores, mas para recapitular, o fatorial de um número é o produto de todos os números até esse número. Por exemplo, o fatorial de 5 é 1 x 2 x 3 x 4 x 5, que é 120; da mesma forma, o fatorial de 4 é 24. Existem duas regras adicionais:
    • O fatorial de 0 é 1;
    • O fatorial de um número negativo é undefined, portanto deve exibir undefined.
  2. Para resolver a tarefa, siga os seguintes passos:
    • Complete o espaço em branco para o método factorial com a definição de parâmetro apropriada. Ele espera um inteiro. Descubra qual deve ser o nome do parâmetro lendo o código interno do método;
    • Se o argumento passado for 0, deve mostrar uma saída fixa que está mencionada nas dicas;
    • O loop deve continuar até (incluindo o número) o inteiro passado. A variável result deve ser atualizada com o produto dela mesma pelo valor da variável do loop. Em resumo: result *= i;
    • Se o número de entrada for negativo (inválido), deve exibir "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); } } }

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 6. Capítulo 5
some-alt