第71問の解答
1.問題 [整数の性質]
1から1999までの整数の中に0という数字は何個出てくるでしょうか?
2.解答例1:どの位に0があるかに着目して数え上げ
(takashiさん、妖怪信ちゃん、長野美光さん、DrKさん、KIRIさん、たなかさん、算数大魔人さん他)一の位に0がある場合:10,20,・・・1990 の199個
十の位に0がある場合:101,102,・・・,109
201,202, ・・・,209
・・・・
1901,1902, ・・・,1909の19×10=190個百の位に0がある場合:1001,1002,・・・,1099の99個
よって、合計199+190+99=489個
答:489個
以上
3.解答例2:数字の桁数に着目して数え上げ:
(わかさひ君、しぶあきさん、りさちゅう2さん、kuri他)4桁の場合:
1xyz でx,y,z は0から9までの数,したがって場合の数は10x10x10=1000,出てくる数字の総数は1000x3=3000,どの数も平等に現れるから0の数は300個3桁の場合:
xyzで、xは1から9、y,z は0から9までの数、したがってあるxに対して場合の数は10x10=100,出てくる数字の総数は100x2=200、どの数も平等に現れるから0の数は20個、よってxは9通りなので3桁の数全部では20x9=180個
2桁の場合:
x0でxは1から9までなので、9個
合計300+180+9=489個
4.解答例3:上位の0をまず消さずに数え上げ:(中村明海さん、井合宗太郎さん)
まず上位0を消さずに数えると、000〜999で各桁100個×3=300個、
1000〜1999にも同じく300個。
次に、上位の0をいくつ消せるかというと、百の位を100個(0xy)、 十の位を10個(0x)、一の位を1個(0)
以上より、 300×2−100−10−1=489個です。
5.解答例4:0の個数に着目して数え上げ:(alephさん、K. Yoshimuraさん)
0が1個の場合:
x0・・・9通り
xy0,1xy0・・・2×81通り
x0y、1x0y・・・2×81通り
10xy・・・81通り
合計414通り×1個=414個0が2個の場合:
x00,1x00・・・2×9通り
10x0・・・9通り
100x・・・9通り
合計36通り×2個=72個0が3個の場合:1000の1通り×3個=3個
従って、414+72+3=489個
6.解答例5:パソコンソフトを活用して数え上げ:(航介さん、柚奇 神太郎さん)
航介さんの場合:
- エクセルのオートフィルで1から1999までの文字列を作成&コピー
- 一太郎またはワードに張り付けて「0」という文字列を置換
- 「489個置換した」と出ます
柚奇 神太郎さんの場合:Mathematicaで作成
Module[{a=0},
If[#==0,a=a+1]&/@
Flatten[Table[{a,b,c,d},{d,0,9},{c,0,9},
{b,0,9},{a,0,1}]];a-1111]