Está en la página 1de 2

Control 2

Escriba un programa que calcule el factorial de una lista de números dados por el usuario.
El usuario ingresa los números de uno a uno. Cada vez que ingresa un número el
programa le devuelve el factorial y le pregunta que ingrese un nuevo número. Para
terminar el usuario debe ingresar -1.
No se preocupen de verificar que el usuario ingresa números negativos o decimales, es
decir, asuman que los números que ingresa el usuario son válidos.

Al correr el programa, el output (lo que imprime) se vería más o menos así (lo verde es
lo que ingresó el usuario):

Ingrese el numero, para terminar ingrese -1


5
El factorial de 5 es 120
Ingrese el numero, para terminar ingrese -1
3
El factorial de 3 es 6
Ingrese el numero, para terminar ingrese -1
-1
Adios

Solución
class Ejemplo
{
public static void main(String[] args)
{
int numero=0;
int i;
int factorial=1;

while(numero != -1)
{
factorial=1;
System.out.println("Ingrese el numero, para terminar ingrese -1");
numero = In.readInt();

if (numero != 0 && numero != 1 && numero != -1)


{
i=2;
while(i <= numero)
{
factorial = factorial*i;
i++;

}
}
if (numero != -1)
System.out.println("El factorial de "+ numero+ " es " +
factorial);

else
System.out.println("Adios");
}
}
}

También podría gustarte