Trace the code briefly, what is the output of the following program if the input given is 150?
import Java.util.*;   
class a {
    static int fact(int number)
    {
        int f = 1;
        while (number != 0) {
            f = f * number;
            number--;
        }
        return f;
    }
    static boolean b(int number)
    {
        int sum = 0;
        int tempNumber = number;
        while (tempNumber != 0) {
            sum = sum + fact(tempNumber % 10);
            tempNumber = tempNumber / 10;
        }
        if(sum == number)
            return true;
        else
            return false;
    }
    public static void main(String[] args)
    {
        int n;
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter any number:");
        n = sc.nextInt();
        if (b(n))
            System.out.println(n + " yes");
        else
            System.out.println(n + "no");
    }
}  

Posted on by