Me custaram alguns neurônios, mas o meu código ficou assim utilizando o método while:
public class DesafioFatorial2 {
public static void main(String[] args) {
int contador = 1; // 1
int fatorialDe10 = (10-9); // 1
while (contador < 10) {
int resultado = fatorialDe10 * (contador +1); // 1 * 2 = 2
System.out.println(resultado); // 2
fatorialDe10 = resultado; //2
contador++;
}
}
}
// (10-9) * (10-8) Resultado * (10-7) Resultado * (10-6) Resultado * (10-5) Resultado * (10-4) Resultado * (10-3) Resultado * (10-2) Resultado * (10-1) Resultado * (10-0)
// 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10
// 2 6 24 120 720 5.040 40.320 362.880 3.628.800
Também fiz usando o método for, como segue abaixo:
public class DesafioFatorial3 {
public static void main(String[] args) {
int fatorDe10 = (10 - 9);
for (int i = 2; i <= 10; i++) {
int resultado = fatorDe10 * i;
System.out.println(resultado);
fatorDe10 = resultado;
}
}
}