2016! 的结果有多少个0的求解方法

本文介绍了一种简单有效的方法来计算2016的阶乘中包含零的数量,并通过具体步骤展示了如何计算这些零。该方法基于寻找1到N范围内5的倍数的原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前天在做网易笔试题时碰到一道求2016的阶乘有多少个零的选择题,一时被难住了,后来不甘心,就认认真真思考了一番,终于找到了一种很简单的解法。


求N的阶乘后有多少个零的解法如下:

(1)原理说明:5和一个偶数(不考虑偶数0)相乘即可得到一个结果为10的倍数的数值,也就是说,产生了零。在1~ N 中找5,有 多少个5,就有多少个零。

  例如,15 =  5 * 3 ,即15有一个·5 ;20 = 5 * 4 ,即20有一个·5;

      25 = 5 * 5 ,即25有两个5 ;100 = 5 * 5 * 4 ,即100有两个5 ;

    125 = 5 * 5 * 5 ,即125有三个5 ;625 = 5 * 5 * 5 * 5 ,即625有四个5

(2)设5的 x 次方等于m,找到不大于数值N的那个最大的m值,也就确定了x和集合{1,2,3,.......,x}

(3)N 除以 (5的一次方),结果取整,假设为 a1

  N  除以 (5的二次方),结果取整,假设为 a2

          N  除以 (5的三次方),结果取整,假设为 a3

  类似地,直到

 N  除以 (5的 x 次方),结果取整,假设为 aX,

         则最后的结果为 (a1 + a2 + a3 + ..... + aX)  个零。


下面以2016的阶乘有多少个零 为例:

(1)5的四次方等于 625 <2016 , 5的五次方等于 3125 > 2016

(2)5  1 ~ 2016 中 是5 的倍数的数 有 403 个   (5 * 2 = 10)

  25 = 5 * 5 1 ~ 2016 中 是25 的倍数的数 80   (25 * 4 = 100)

125 = 5 * 5 * 51 ~ 2016 中 是125 的倍数的数 16  (125 * 8 = 1000)

 625 = 5 * 5 * 5  * 5 1 ~ 2016 中 是625 的倍数的数 3    (625 * 16 = 10000)

(3)最后的结果为 : 403 + 80 + 16 + 3 = 502 (个)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值