1 1 以上の数の桁数
定理 1.1 (桁数と常用対数).Nを1以上の実数とし、Nを10進法で表したときの整数部分の桁数をnとする。このとき
n=⌊log10N⌋+1が成り立つ。
証明.N≥1であるから、Nの整数部分の桁数nは正の整数である。整数部分がn桁であることは、整数部分が10n−1以上10n未満であることと同値である。10n−1と10nは整数であるから、Nの整数部分がこの範囲にあることは、N自身がこの範囲にあることと同値である。したがって
10n−1≤N<10nが成り立つ。§B3.5 定理 3.1によりlog10は狭義単調増加であるから、この不等式は
log1010n−1≤log10N<log1010nと同値である。§B3.5 定理 2.1により、すべての整数kについてlog1010k=klog1010=kである。したがって
n−1≤log10N<nを得る。n−1は整数であるから、床関数の定義により⌊log10N⌋=n−1である。両辺に1を加えると
n=⌊log10N⌋+1を得る。▨
例 1.2 (2100の桁数).0.3010<log102<0.3011とする。§B3.5 定理 2.1によりlog102100=100log102であり、この評価の各辺を100倍すると
30.10<log102100<30.11である。とくに30<log102100<31であるから⌊log102100⌋=30であり、定理 1.1により2100の桁数は30+1=31である。
例 1.3 (積と累乗を組み合わせた評価).0.3010<log102<0.3011と0.4771<log103<0.4772とする。650の桁数を求める。
6=2⋅3であるから、§B3.5 定理 2.1によりlog106=log102+log103である。二つの評価を辺ごとに足すと0.7781<log106<0.7783である。§B3.5 定理 2.1によりlog10650=50log106であるから、各辺を50倍して
38.905<log10650<38.915を得る。とくに38<log10650<39であるから⌊log10650⌋=38であり、定理 1.1により650の桁数は39である。
2 1 より小さい正の数を小数で表したとき
0<N<1のとき、Nを小数で表すと、小数点の直後にいくつかの0が並んでから0でない数字が現れます。その位置も常用対数から求まります。以下では、0.1=0.0999⋯のように小数の表し方が二通りある数については、9が限りなく続かない方の表し方を用います。
定理 2.1 (0でない数字が最初に現れる位).Nを0<N<1を満たす実数とし、Nには9が無限に続かない小数表示を用いる。また、kを正の整数とする。次の二つは同値である。
- 10−k≤N<10−k+1
- Nを小数で表すと、小数第1位から第k−1位までがすべて0であり、小数第k位が0でない
さらに、このときk=−⌊log10N⌋である。
証明.Nの小数第1位から第k−1位までのいずれかが0でなければ、その最初の位は第k−1位以前であるからN≥10−k+1である。反対に、第1位から第k−1位までがすべて0であれば、9が無限に続かない小数表示を用いることからN<10−k+1である。したがって、最初のk−1個の数字がすべて0であることとN<10−k+1は同値である。
最初のk−1個の数字がすべて0であるとし、小数第k位の数字をdとする。小数第k+1位以下が表す数をrとおけば、0≤r<10−kであり、
N=d⋅10−k+rと書くことができる。d=0ならばN≥d⋅10−k≥10−kであり、d=0ならばN=r<10−kである。したがって、小数第k位の数字が0でないこととN≥10−kは同値である。以上の二つの同値から、最初の非零の数字が小数第k位にあることと
10−k≤N<10−k+1は同値である。
§B3.5 定理 3.1によりlog10は狭義単調増加であるから、この不等式は
log1010−k≤log10N<log1010−k+1と同値である。§B3.5 定理 2.1により、これは
−k≤log10N<−k+1と書き直される。−kは整数であるから、床関数の定義により⌊log10N⌋=−kである。両辺の符号を変えるとk=−⌊log10N⌋を得る。▨
例 2.2 ((21)100を小数で表したとき).0.3010<log102<0.3011とする。(21)100=2−100であり、§B3.5 定理 2.1によりlog102−100=−100log102である。0.3010<log102<0.3011の各辺を−100倍すると不等号の向きが変わり
−30.11<log102−100<−30.10である。とくに−31<log102−100<−30であるから⌊log102−100⌋=−31であり、定理 2.1によりk=31である。したがって(21)100を小数で表すと、小数第1位から第30位までがすべて0であり、小数第31位に初めて0でない数字が現れる。
定理 1.1と定理 2.1は、どちらも⌊log10N⌋を求める計算です。N≥1のときは⌊log10N⌋≥0であり、その値に1を足したものが整数部分の桁数です。0<N<1のときは⌊log10N⌋<0であり、その符号を変えたものが、0でない数字が最初に現れる小数の位です。