1~10000内的所有自然数中含有8这个数字的有多少个?

如题所述

因为0和10000中都不含数字8,所以,这个问题可以看作是:0000到9999中含有8的数有多少个?

不含8的位置上,只能是012345679这9个数字,即每个位置上有9种选择。按照含8的个数,进行分类讨论:

含一个8的,其它三位的方案数是9*9*9=729,插入8的方案数是4选1,即C(4,1)=4;叠加计算,729*4=2916个。

含两个8的,其它两位的方案数是9*9=81,合并插入两个8的方案数是C(3,1)=3,分开插入两个8的方案数是C(3,2)=3;叠加计算,81*3+81*3=486个。

含三个8的,其它一位的方案数是9,合并插入三个8的方案数是C(2,1)=2,插入88和8的方案数是C(2,1)=2;叠加计算,9*2+9*2=36。

含四个8的,方案数就1个。

上述合计,一共是 2916+486+36+1 = 3439个。

~~~~~~~~~~~~~~~~~~~~

用编程方法进行验证,结果完全正确。附fortran代码和计算结果:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-11-13
4000个。

方法一:
1-9含有1个8;
1-99含有20个8;
1-999含有300个8;
同理,
1000-1999含有300个8;
2000-2999含有300个8;
……
7000-7999含有300个8;
8000-8999含有1000+300个8;
9000-9999含有300个8;
共 300*10+1000=4000

方法二:
0000-9999共40000个数字,0-9每个数字出现的概率都是1/10,故8出现的次数为40000/10=4000本回答被网友采纳
相似回答