Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

My factorial method is working correctly although I would like to change the output from just outputting the number and the factorial result. For example I would like if the user enters 6 for the output to say 6 * 5 * 4 * 3 * 2 * 1 = 720, instead of factorial of 6 is: 720.

int count, number;//declared count as loop and number as user input
    int fact = 1;//declared as 1
    Scanner reader = new Scanner(System.in);  // Reading from System.in
    System.out.println("Please enter a number above 0:");
    number = reader.nextInt(); // Scans the next token of the input as an int
    System.out.println(number);//prints number the user input
    if (number > 0) {
        for (i = 1; i <= number; i++) {//loop 
            fact = fact * i;
        }
        System.out.println("Factorial of " + number + " is: " + fact);
    }
    else 
    {
        System.out.println("Enter a number greater than 0");
    }
}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
272 views
Welcome To Ask or Share your Answers For Others

1 Answer

create a string and store the numbers.

try something like this.

    int count, number;//declared count as loop and number as user input
    String s; //create a string
    Scanner reader = new Scanner(System.in);  // Reading from System.in
    System.out.println("Please enter a number above 0:");
    number = reader.nextInt(); // Scans the next token of the input as an int
    int fact = number;//store the number retrieved
    System.out.println(number);//prints number the user input
    if (number > 0) {
        s=String.valueOf(number);
        for (int i = 1; i < number; i++) {//loop 
            fact = fact * i;
            s = s +" * "+String.valueOf(number-i);
        }
        System.out.println(s+ " = " + fact);
    }
    else 
    {
        System.out.println("Enter a number greater than 0");
    }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...