Conteúdo do Curso
Noções Básicas de C#
Noções Básicas de C#
Praticando 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 esboço do programa é fornecido, preencha os detalhes ausentes para completar o programa:
main
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); } } }
- Fizemos um exercício relacionado ao fatorial em uma das seções anteriores, mas para recapitular, o fatorial de um número é o produto de todos os números até aquele 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
, então deve exibirundefined
;2. Para resolver a tarefa, siga os seguintes passos:- Preencha o espaço em branco para o métodofactorial
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
, ele deve mostrar uma saída fixa que é 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 de si mesma com a variável do loop. Em resumo:result *= i
; - Se o número de entrada for negativo (inválido), ele deve exibir "indefinido".
main
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); } } }
Obrigado pelo seu feedback!