Nice to meet you, i am a newbie i would like to ask a question that bothers me out :

1).How to add the decimal representation of N! (5 <= N <= 1,000,000) is simply the multiplicity of the prime factor 5 in N! to my script?
2). I wanted to ask how the output of case#3:118 became case#3:27,whether the problem is string or an Integer? and how to solve it? Could you help me out. thanks

here's my code code:

``````Package test;
import java.io.IOException;

public class test {
String trailing;
String y;

/**
* @param args the command line arguments
*/

public static void main(String[] args) throws Exception{
System.out.print("Sample Input:");
final int bilangan =inputData();
int trailing;
trailing = findTrailingZeroes(bilangan);
String y= String.valueOf(trailing);
System.out.println("The number of trailing zeroes in " + bilangan );
System.out.println( "factorial is " + y);

}

public static int findTrailingZeroes(int number)
{
int trailingZeroes = 0;
int loopCounter = 0;

number -= 5;

while (number >= 0)
{
trailingZeroes++;
loopCounter++;

if (loopCounter == 5)
{
trailingZeroes++;
loopCounter = 0;
}

number -= 5;
}

return trailingZeroes;
}

private static int inputData() throws IOException{
String angkaInput = null;
try {
}catch (IOException e){
e.printStackTrace();
}
int x = Integer.valueOf(angkaInput).intValue();
String y= String.valueOf(angkaInput);
System.out.println("Sample Output:");
System.out.println("");
switch(x)
{
case 5:
System.out.println("Case#1:"+y);
break;
case 10:
System.out.println("Case#2:"+y);
break;
case 118:
System.out.println("Case#3:"+y);
break;
case 211:
System.out.println("Case#4:"+y);
break;
default:
int bilangan = 0;
break;
}
return x;

}
}
``````

Output :
Sample Input:118
Sample Output:

Case#3:118
The number of trailing zeroes in 118
factorial is 27

## JamesCherrill 3,661

1. Factorials of numbers like 1,000,000 are far far too large for ordinary int or long variables; you need the BigInteger class to hold them. BigInteger also has a toString method that gives you a string version that you can print etc.

2. I have no idea what "case 3" is supposed to do, so how can anyone tell why it's wrong? YOu need to explain this a lot better.