Я пытаюсь запрограммировать, что независимо от того, введено пользователем не строгое число или нет, но я получаю одинаковый вывод 145 = 1! + 4! + 5! = 145 - сильное число
123 = 1! + 2! + 3! = 9 не является сильным числом
import java.util.*;
public class Strong{
public static void main(String[] args)
{
Scanner s=new Scanner(System.in);
int n=s.nextInt();
int i;
int fact=1;
int rem;
int sum=0;
int temp=n;
while(n!=0) {
rem=n%10;
for(i=1;i<=rem;i++) {
fact=fact*i;
}
sum=sum+fact;
n=n/10;
}
if(sum==temp) {
System.out.println("number u have entered is strong");
} else {
System.out.println("no is not strong");
}
}
}
Например, я ввел no 145, я ожидаю, что введенный вами номер выхода является сильным, но фактический вывод no не является сильным