1. 程式人生 > >求階乘末尾0的個數(java)

求階乘末尾0的個數(java)

末尾0的個數

題目描述

輸入一個正整數,求n!末尾有多少個0?比如n = 10; n! = 3628800 ,所以答案為2

輸入描述

輸入為一行,n (1 <= n <= 1000)//輸入量範圍限制不能用先求階乘的方法,會產生溢位

輸出描述

輸出一個整數,即題目所求

輸入

10

輸出

2

輸入

50(結果30414093201713378043612608166064768844377641568960512000000000000

輸出

12

package javaPractice;

import java.util.*;

public class CountZero {
	public static void main(String[] args) {
		CountZero cz = new CountZero();
		Scanner s = new Scanner(System.in);
		int n = s.nextInt();
		System.out.println(n+"d的階乘中尾部零的個數為:"+cz.countFive(n));
		
	}
	public int countFive(int n) {
		int count = 0;
		if(n<5) {
			return count;
		}
		else {
			return n/5 + countFive(n/5);
		}
	}
}