/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main
(String[] args
) { Scanner sc
= new Scanner
(System.
in);
int resultadoFatorial = 1;
StringBuilder multiplicador = new StringBuilder();
System.
out.
println("Insira um número para descobrir seu respectivo Fatorial:"); int fatorialDoNumero = sc.nextInt();
while (fatorialDoNumero < 0) {
System.
out.
println("Não é possível calcular o fatorial de números negativos!"); System.
out.
println("Insira um número maior ou igual a zero para descobrir seu respectivo Fatorial:"); fatorialDoNumero = sc.nextInt();
}
for (int i = fatorialDoNumero; i > 1; i--) {
resultadoFatorial *= i;
multiplicador.append(i).append(" x ");
}
if (fatorialDoNumero == 0) {
System.
out.
println(fatorialDoNumero
+ "! = 1"); } else {
System.
out.
println(fatorialDoNumero
+ "! = " + multiplicador
+ "1 = " + resultadoFatorial
); }
sc.close();
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTY2FubmVyIHNjID0gbmV3IFNjYW5uZXIoU3lzdGVtLmluKTsKCiAgICAgICAgaW50IHJlc3VsdGFkb0ZhdG9yaWFsID0gMTsKICAgICAgICBTdHJpbmdCdWlsZGVyIG11bHRpcGxpY2Fkb3IgPSBuZXcgU3RyaW5nQnVpbGRlcigpOwoKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIkluc2lyYSB1bSBuw7ptZXJvIHBhcmEgZGVzY29icmlyIHNldSByZXNwZWN0aXZvIEZhdG9yaWFsOiIpOwogICAgICAgIGludCBmYXRvcmlhbERvTnVtZXJvID0gc2MubmV4dEludCgpOwoKICAgICAgICB3aGlsZSAoZmF0b3JpYWxEb051bWVybyA8IDApIHsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJOw6NvIMOpIHBvc3PDrXZlbCBjYWxjdWxhciBvIGZhdG9yaWFsIGRlIG7Dum1lcm9zIG5lZ2F0aXZvcyEiKTsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJJbnNpcmEgdW0gbsO6bWVybyBtYWlvciBvdSBpZ3VhbCBhIHplcm8gcGFyYSBkZXNjb2JyaXIgc2V1IHJlc3BlY3Rpdm8gRmF0b3JpYWw6Iik7CiAgICAgICAgICAgIGZhdG9yaWFsRG9OdW1lcm8gPSBzYy5uZXh0SW50KCk7CiAgICAgICAgfQoKICAgICAgICBmb3IgKGludCBpID0gZmF0b3JpYWxEb051bWVybzsgaSA+IDE7IGktLSkgewogICAgICAgICAgICByZXN1bHRhZG9GYXRvcmlhbCAqPSBpOwogICAgICAgICAgICBtdWx0aXBsaWNhZG9yLmFwcGVuZChpKS5hcHBlbmQoIiB4ICIpOwogICAgICAgIH0KCiAgICAgICAgaWYgKGZhdG9yaWFsRG9OdW1lcm8gPT0gMCkgewogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oZmF0b3JpYWxEb051bWVybyArICIhID0gMSIpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihmYXRvcmlhbERvTnVtZXJvICsgIiEgPSAiICsgbXVsdGlwbGljYWRvciArICIxID0gIiArIHJlc3VsdGFkb0ZhdG9yaWFsKTsKICAgICAgICB9CgogICAgICAgIHNjLmNsb3NlKCk7CiAgICB9Cn0=