Programming

T03-002-01 Ejercicios con funciones que devuelven enteros.

Enunciado

Queremos hacer un programa Java que calcule el factorial de un número. En el siguiente enlace tienes información sobre cómo se calcula el factorial de un número.

NOTA:

  • El factorial de 5 es 5 * 4 * 3 * 2 * 1 = 120.
  • El factorial de 0 es 1.

Utiliza un double para calcular el factorial.

ENTRADA

La entrada comienza con un número indicando cuántos casos de prueba deberán ser procesados.

A continuación habrá una línea para cada caso, donde cada caso es simplemente el número del que hay que calcular el factorial. Cada número será un entero n, con n >=0 y n<=100

SALIDA

Por cada caso de prueba, el programa escribirá el resultado del cálculo del factorial del número

RESTRICCIONES

Deberá resolverse el problema diseñando una función que calcule y devuelva el factorial del número pasado como parámetro.

Se proporcionan la cabecera o interfaz de dicha función en la sección MUST CONTAIN 

El programa principal irá procesando la entrada del teclado, irá invocando a la función e irá imprimiendo el resultado calculado y devuelto por ésta.

Solución


											
import java.util.Scanner; public class FFactorial { public static void main(String[] args) { // TODO code application logic here int numCasos = 0; int numEntrada = 0; Scanner sc = new Scanner(System.in); numCasos = sc.nextInt(); for (int i=1; i<=numCasos; i++){ numEntrada = sc.nextInt(); System.out.println(factorial(numEntrada)); } } public static double factorial (int numero){ double resultado = 1; for (int i = 1; i <= numero; i++) { resultado = resultado * i; } if (numero <= 0) { resultado = 1; } return resultado; } }

Input

7 5 4 8 10 50 0 1
7 5 4 8 50 10 0 1

Output

120.0 24.0 40320.0 3628800.0 3.0414093201713376E64 1.0 1.0
120.0 24.0 40320.0 3.0414093201713376E64 3628800.0 1.0 1.0