programming forums Java Java JSRs Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Products This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
Sheriffs:
Saloon Keepers:
Bartenders:

Greenhorn
Posts: 13
Hi I need a program which should calculate the factorial of given number. (the number is entered by the user)
(the factorial of 4 for example is 4*3*2*1 answer is 24)
My question is "how do I calculate the factorial of a given number?"

(btw I am new to programming)

class Conpronum
{
public static void main(String[ ]args)
{
//Declare variables
int num1

num1 = EasyIn.getInt();

This is all I have done so far. I don't know how to tackle this problem.

author and iconoclast
Sheriff
Posts: 24217
38
Let's say your number is N.
You must use a loop. Before the loop, set a variable "f" to 1, and another variable "n" to N. Then, each time through the loop, multiply f by n, then subtract 1 from n. When n gets to be 1, you're done, and you can exit the loop, and "f" holds the answer.

Ranch Hand
Posts: 154
About the recursive method (beautifully simple but a little tough for a beginner to understand):
http://mindprod.com/jgloss/recursion.html
Algorithm
Get the number.
To begin, set the factorial of the number to be one.
(Create an int named "factorial")
While the number is greater than one
Set the factorial to be the factorial multiplied by the number.
Decrement the number.
Print out the factorial
(source: http://www.cs.tcd.ie/Jennifer.Foster/LecturesByTopic/DoWhile/)

macca Mason
Greenhorn
Posts: 13
Thx alot Ernest.
I will try and make these changes. But I new to programming so if I get stuck again trying to make these changes I will post here.
Thx
Macca

macca Mason
Greenhorn
Posts: 13
Thx Elouise
I will try my best to follow this.

 I want my playground back. Here, I'll give you this tiny ad for it: The WEB SERVICES and JAX-RS Course https://coderanch.com/t/690789/WEB-SERVICES-JAX-RS