zoukankan      html  css  js  c++  java
  • n的阶乘尾数有几个0

    /*
     n!尾数有几个0 
    */
    #include <iostream>
    using namespace std;
    void find0(int n); 
    int find(int i,int n);
    int main(void)
    {
    	int n;
    	cin>>n;
    	find0(n); 
    	return 0;
    }
    void find0(int n)
    {
    	int cnt5=0,cnt2=0; 
    	//分析
    	/*
    	每次产生一个0有
    	2*5=10;
    	10=2*5;
    	*/ 
    	for(int i=1;i<=n;i++){
    	//		cnt2+=find(i,2); 
    			cnt5+=find(i,5);
    	} 
    	//cout<<"尾数有"<< (cnt5>cnt2?cnt2:cnt5)<<"个0"<<endl; 
        cout<<"尾数有"<< cnt5 <<"个0"<<endl; 
    }
    
    int find(int i,int n){
    	int cnt=0;
    	while(!(i%n)){
    		cnt++;
    		i=i/n;
    	}
    	return cnt;
    }


  • 相关阅读:
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
  • 原文地址:https://www.cnblogs.com/pzqu/p/9457673.html
Copyright © 2011-2022 走看看