A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2014-5-26 20:48  /  5341 人查看  /  39 人回复  /   4 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 西门吹风 于 2014-5-27 09:11 编辑

今天刚好看完for循环视频,尝试用for循环写了一下,这个数好像不能太大,不然超过long的范围,望高人指正
  1. /*
  2. 1、任意数先分为0和非0
  3. 2、非0时用for循环求阶乘积,分为正数、负数
  4. 3、用阶乘积与10取模看其余数是否为0,如果是则计数器加1,
  5. 然后用阶乘积除以10,相当于最后一个0去掉,再与10取模,
  6. 如此循环,直到去掉N个0后的阶乘积与10取模的余数不为0时
  7. 跳出循环。
  8. */
  9. class CountZero
  10. {
  11.         public static void main(String[] args)
  12.         {
  13.                 int x=15;      
  14.                 long sum=1l;      
  15.                 int count=0;           
  16.                 if(x!=0)                     
  17.                 {
  18.                         if(x>0)                     
  19.                         {
  20.                                 for(int i=1;i<=x;i++)        
  21.                                 {
  22.                                         sum=sum*i;
  23.                                 }
  24.                         }
  25.                         else if(x<0)            
  26.                         {
  27.                                 for(int i=-1;i>=x;i--)   
  28.                                 {
  29.                                         sum=sum*i;
  30.                                 }
  31.                         }
  32.                         for(long i=sum ;i%10==0 ;i=i/10)      
  33.                         {                                                      
  34.                                 count++;                                    
  35.                         }        
  36.                 }
  37.                 else                                                
  38.                 {
  39.                         count=1;
  40.                         sum=0;
  41.                 }
  42.                 System.out.println(sum);      
  43.                 System.out.println(count);
  44.         }
  45. }
复制代码



评分

参与人数 1技术分 +1 收起 理由
李小然 + 1 很给力!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马