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

Solución un poco diferente

En esta solución me adelante un poco al tema y decidí hacerlo con recursividad, además también agregue una forma de hacerlo sin recursividad. :D

public class Pruebas {
    
    public static void main(String[] args) {
        Scanner input = new Scanner (System.in);
        
        System.out.println("Ingrese un numero: ");
        int num = input.nextInt();
        
        System.out.println("El factorial de: "+num+" es: "+factorial(num));
        
        /// Otra forma de hacerlo seria:
        int factorial = 1;
        for (int i = 1; i <= num; i++) {
         factorial *= i;   
        }
        System.out.println("\nEl factorial de: "+num+" es: "+factorial);
            
    }  
    ///Creo una funcion de tipo static para poder ser utilizada dentro de la misma clase
    public static int factorial(int n){
        
        if (n == 0) {
            n = 1;
            
        } else {   
             n *= factorial(n-1);
        }
        ///La funcion es de estilo recursiva, hasta que no llegue al caso base no deja de llamarse
        return n;
        
    }
    
    
}
1 respuesta

Hola Alumno, ¡espero que estés bien!

Gracias por compartir tu solución, felicitaciones! Espero que estés disfrutando del contenido y las actividades!

Comentario: Muy interesante cuando la persona evoluciona la respuesta de la actividad, la recursión es un tema importante en la programación y ciertamente la programación con java también :)

Anexo: el foro se centra en las dudas de contenido y actividad, ¡pero apreciamos sus resultados! Te sugiero que compartas tus resultados en tu grupo en lo servidor en Discord.

Mucho éxito en todo lo que te propongas y si tienes alguna duda aquí estaremos para apoyarte.

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!