Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Crep que se puede simplificar mas pero no se Donde

public class FactorialFor { public static void main(String[] args) { for (int i = 1; i <= 10; i++) { long factorial = calcularFactorial(i); System.out.println("El factorial de " + i + " es: " + factorial); } }

public static long calcularFactorial(int n) {
    if (n == 0) {
        return 1;
    } else {
        long factorial = 1;
        for (int i = 1; i <= n; i++) {
            factorial *= i;
        }
        return factorial;
    }
}

}

1 respuesta

Hola,podemos eliminar la verificación de n == 0 porque si n es igual a 0, el bucle for no se ejecutará y el resultado será 1, que es el factorial de 0. te quedaria asi :

public static long calcularFactorial(int n) {
    long factorial = 1;
    for (int i = 1; i <= n; i++) {
        factorial *= i;
    }
    return factorial;
}