Contenido del Curso
Conceptos básicos de C#
Conceptos básicos de C#
Practicando Método con Parámetros
En este desafío necesitas crear un nuevo método llamado factorial
que tendrá un parámetro llamado n
de tipo int
. Debe calcular el factorial del valor pasado n
y mostrar el resultado.
Se proporciona el esquema del programa, completa los detalles faltantes para completar el 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); } } }
- Hemos realizado un ejercicio relacionado con el factorial en una de las secciones anteriores, pero para recapitular, el factorial de un número es el producto de todos los números hasta ese número.
Por ejemplo, el factorial de 5
es 1 x 2 x 3 x 4 x 5
que es 120
, de manera similar, el factorial de 4
es 24
. Hay dos reglas adicionales:- El factorial de 0
es 1
;
- El factorial de un número negativo es
undefined
, por lo que debería mostrarundefined
;2. Para resolver la tarea, siga los siguientes pasos:- Complete el espacio en blanco para el métodofactorial
con la definición de parámetro adecuada. Se espera un entero. Descubra cuál debería ser el nombre del parámetro leyendo el código interno del método; - Si el argumento pasado es
0
, debería mostrar una salida fija que se menciona en las pistas; - El bucle debería continuar hasta (incluyendo el número) el entero pasado. La variable
result
debería actualizarse con el producto de sí misma con la variable del bucle. En resumen:result *= i
; - Si el número de entrada es negativo (inválido), debería mostrar "undefined".
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); } } }
¡Gracias por tus comentarios!